
On 15/01/2013 03:42, Valerio Aimale wrote:
Not due to the menu-integration, but to packaging in general:
°) Extensions do not work: lxml still fails to import The bundled python lxml module (etree.so, etc) is linked against a newer version of libxml2 from the custom MacPorts tree, which is higher than what ships with the system on Lion and Mountain Lion (i.e. not compatible). According to [2], Lion 10.7.4 and 10.7.5 ship with the same version, and I don't really have a clue why it apparently works for Victor - possibly he has python as well as the same newer version of libxml2 installed in '/opt/local' (default MacPorts prefix), or possibly MacPython (from python.org) and lxml in '/Library/Frameworks': unlike the old 0.48.2 package, Valerio's packages do not prepend '/usr/bin' to $PATH to always enforce the usage of the system python. On my laptop OTOH, '/opt/local' does not exist, and I never installed a custom python version (or any python module) into /Library.
Several issues here:
- Inkscape cannot use python modules from the System default python.
Here's the why. Inkscape depends on uniconvertor, which in turns depends on sk1libs. Sk1libs, in its turn, depends on freetype2 and little cms. Both are unavailable in a standard Mac OS X distribution. Python modules that are shipped with Inkscape should depend on macports libraries for those reasons. I've found an elegant solution, to rewrite dynamic linker dependencies such that python modules from macports can be bundled into Inkscape and still work. Next package will have full python support.
Note: UniConvertor is an _optional_ dependency, not a required one, and has never been included in the package for Mac OS X [1]. Since it is used as python module in the extensions, Inkscape cannot check for its presence, and still loads the input/output extensions even if they fail to work.
I don't really understand the relevancy of UniConvertor 1.1.5 here unless related to bug #1046068 https://bugs.launchpad.net/inkscape/+bug/1046068 which erroneously may trigger UniConvertor-based output extensions (or any other random output extension) on exit (expected behavior would be to simply quit silently, or to save and quit, without triggering additional output extensions).
If on the other hand you ported UniConvertor 1.1.5 to OS X, and manage to include a fixed and functional UniConvertor python module in Inkscape.app, this would certainly be a great bonus feature for Inkscape on OS X (though by itself this is no fix for bug #1046068).
----- [1] UniConvertor was not ported to Mac OS X by the sk1 team, and development & maintenance of UniConvertor 1.x has stopped upstream.
Even if one manages to install UniConvertor 1.1.5 on OS X, the package is only partially functional (IIRC from the time I tried (on 10.5.8), the internal font path for example is simply set to '/' which even on a modestly sized hard drive caused a time out / failure of any conversion if font names had been involved).