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 ??)

Thomas

Reply via email to