Is panel plugins integration broken at the moment?
Carol Spears
carol at gimp.org
Thu Oct 20 21:36:37 CEST 2005
On Thu, Oct 20, 2005 at 08:41:51PM +0200, Jasper Huijsmans wrote:
> Carol Spears schreef:
> > On Thu, Oct 20, 2005 at 01:23:08PM +0200, Jasper Huijsmans wrote:
> >
> >>Carol Spears schreef:
> >>...
> >>
> >>This is getting a bit off-topic ;-) External plugins for the new panel
> >>are installed in ${prefix}/libexec/xfce4/panel-plugins/. Some
> >>distributions define the libexec directory to be ${prefix}/lib/.
> >
> >
> > this made sense to me if it was something from samba.
> >
>
> I don't get this. What does any of this have to do with samba?
>
i looked at what was on my computer:
carol at treva:~$ ls /usr/local/libexec/
balou-export-theme
balou-install-theme
xfce4/
xfsm-shutdown-helper
carol at treva:~$ ls /usr/local/libexec/xfce4/panel-plugins/
xfce4-menu-plugin
carol at treva:~$ ls /usr/libexec
ls: /usr/libexec: No such file or directory
i have a handful of facts. i do not use or install samba. i have not
attempted to play with the menu editor yet. i had to tell my svn xfce
to use my theme again, and this did not bother me. another potential
fact is that debian ditched that directory in /usr/ for its own purposes
and this is the reason i do not see it there. i did not purge their
xfce4, i merely removed it. i do not know if that is a pertinent fact
here, it is just a fact i have that might mean something.
i started to wonder where such a directory came from to begin with. i
am used to developers who seem to mix the ideas of easy and efficient
and get a really good product from that mix. so, what reason would this
new directory appear in /usr/local? seeing the xfsm-shutdown-helper and
having recently enjoyed the beauty and mystery of rsync -- i answered my
own question about where this new $PREFIX originated from and decided it
was for samba to be able to have its own weird little place on a
computer that is running between two operating systems -- or however
that works. sometimes i answer my questions wrongly. i know this.
it is still difficult for me to imagine that developers add a new
location like this on a computer that works with shared libraries for a
reason other than the ones samba would have.
> > i don't want to change an important root owned file like that for one
> > application. the only reason i would consider it is if i was installing
> > something like samba to read acrossed file systems like i guess it does.
> >
>
> Erm, xfce installs libraries. They need to be found by applications and
> by plugins. There are, as far as I know, two ways to do this:
> 1. add the appropriate directory to /etc/ld.so.conf
> 2. set LD_LIBRARY_PATH to include the appropriate directory
>
> This is the same for both regular programs and external plugins.
> However, it seems that for regular programs, i.e. the ones installed in
> ${prefix}/bin, the linker knows how to find the libraries in
> ${prefix}/lib even without either of those settings. The problem is that
> for plugins this doesn't work, so what happens is this:
>
> 1. xfce4-panel works fine (it's in ${prefix}/bin)
> 2. the panel runs plugins in ${prefix}/libexec/xfce4/panel-plugins,
> which fail. There is no warning to the user.
>
> There also is no problem building the plugins, because pkg-config adds
> the appropriate linker flags during compilation.
>
> That's it, nothing to do with samba or with doing something
> extra-special to make the panel work. The problem is that the panel
> doesn't fail in the same way that plugins do, which makes it much harder
> to understand for the user.
>
> I hope this explanation made a little more sense ;)
>
sure, it makes sense. and looking at mine, i can see that perhaps i
lost an important benefit when i had to tell my new installation to
reload my old theme. and, when i get around to editing the menu, i will
probably have to rebuild things.
what doesn't make sense to me is how it got there.
gimp puts its plug-ins in ${prefix}/lib/gimp/version/plug-ins/
they run into some problems with the version part. for instance, i am
using gimp-2.3 and it gets its plugins from
${prefix}/lib/gimp/2.0/plug-ins. something about portability. the only
reason to run gimp-2.2 and gimp-2.3 would be if you were a fixer of bugs
and you should probably be handy enough with the build tools to work
that out.
i still think that since xfce uses samba, that is how that directory got
there. help me understand :)
carol
More information about the Xfce4-dev
mailing list