Hi Thomas, Thanks for your input! I'll definitely have a look at those sys.path hacks you have in flumotion (although my ultimate goal would be to completely get rid of all hacks, but let's go step by step...).
Thomas Vander Stichele a écrit : > Hi Olivier, > >> As a starting point, I've compiled a incomplete list of applications >> that have a plugin system and where they install their plugins on my >> ubuntu intrepid system: >> >> - rhythmbox: plugins in /usr/lib/rhythmbox/plugins/ >> - bzr: plugins in /usr/share/pyshared/bzrlib/plugins/ > > > /usr/share is for data files, bzr is doing it wrong. Consider for > example SELinux which definately will not label those as executable by > default. I'm pretty sure rpm complains as well about putting executable > code there. Also, for multilib installs it will fail since there is no > share64. > >> - banshee: extensions in /usr/lib/banshee-1/Extensions/ >> - firefox: extensions in /usr/share/mozilla-extensions/ > > I have /usr/share/mozilla/extensions, /usr/lib/mozilla/extensions, > and /usr/lib64/mozilla/extensions. > > All of them are empty except for an empty directory in two of them. I > would still consider /usr/share wrong in this case. > >> - thunderbird: extensions in /usr/lib/thunderbird/extensions/ >> - totem: plugins in /usr/lib/totem/plugins/ >> - eclipse: plugins in /usr/lib/eclipse/plugins/ > > >> Don't hesitate to complete this list or compare the same applications on >> other distributions. > > Flumotion uses $(libdir)/flumotion/python for all its code. > > I think the recommended location is $(libdir)/... with some systems > using a libexecdir (but most seem to have gone back to $(libdir), I > think on fedora there is no 64-bit version of that dir) > > Our (Flumotion) sys.path hacks seem to work fine and allow running a > Flumotion uninstalled even when flumotion is also installed on the > system (a major no-no with moovida and one of my biggest pet peeves - > why should I have to *remove* my stable system install just to hack on > moovida ??) The answer is simple: you shouldn't have to. This is a pretty bad bug that proves the weakness of our path hacks, and one of the motivations for me to start some re-factoring there. > > Thomas Cheers, Olivier
