Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Git Version | Version Git Rev 984: FHS violation of plugin directory
The latest stable release is the *3.4.0* : How to install it here.
Note: We just switched from BZR to Git on Github! (only to host the code and your future pull requests)
Git Version | Version Git

Subjects Author Language Messages Last message
[Locked] Rev 984: FHS violation of plugin directory
mtasaka English 5 fabounet [Read]
19 May 2008 à 13:30

mtasaka, Friday 16 May 2008 à 10:45


Subscription date : 16 May 2008
Messages : 106
Currently (on rev 984) cairo-dock.pc.in has:
pluginsdir=@datadir@/@PACKAGE@/plug-in
On Fedora, this line is expanded as
/usr/share/cairo-dock/plug-in by default, so by default all plugins are installed
under this directory.

This is against FHS, because installed plugins contain some architecture-dependent
ELF binaries such as libcd-Xgamma.so, while FHS says that all files under /usr/share
must be architecture-independent files (i.e. no ELF binaries are under /usr/share):
http://www.pathname.com/fhs/pub/fhs-2.3.html#USRSHAREARCHITECTUREINDEPENDENTDATA

I suggest that pluginsdir be moved to @libdir@/@PACKAGE@/plug-in, also
cairo-dock/src/Makefile.am needs fixing so that DCAIRO_DOCK_MODULES_DIR points to that
directory.

Also, currently I cannot find out why plugin ELF modules like libcd-compiz-icon.so
are also installed under @libdir@. These are plugin modules, already installed under
pluginsdir and I guess these modules are not intended to be used by other packages.
Currently on Fedora rpm I delete all such files installed under @libdir@ and I see
no problem.

Moreover, on cairo-dock.pc adding @PACKAGE_LIBS@, @PACKAGE_CFLAGS@ is unneeded.
Just adding proper pkgconfig .pc file names to "Requires:" item in cairo-dock.pc
like
Requires: gtk+-2.0 gthread-2.0 cairo librsvg-2.0 glitz dbus-1 dbus-glib-1 libxml-2.0 xtst glitz-glx
Libs:-L${libdir}
Cflags:-I${includedir}/cairo-dock -I${includedir}/cairo-dock/cairo-dock
is enough.

fabounet, Friday 16 May 2008 à 13:12


Subscription date : 30 November 2007
Messages : 17118
thanks for your advice, let's follow the standards !
ok to move the plug-ins in libdir/package.
I agree that the .so shouldn't be in /usr/lib but actually I don't know how to avoid that
if you could give me a hint it would be nice.
also you seem to know about Makefile.am, I was wondering how I could make a global Makefile for plug-ins without breaking the unitary compilation.

mtasaka, Friday 16 May 2008 à 14:09


Subscription date : 16 May 2008
Messages : 106
I agree that the .so shouldn't be in /usr/lib but actually I don't know how to avoid that

For now I tried to rewrite plug-ins/clock/src/Makefile.am with refering to Makefile.ams of
anjuta and gimp:
http://mtasaka.fedorapeople.org/pkgs/cairo-dock/clock-Makefile.am
This seems to work well.

fabounet, Friday 16 May 2008 à 17:31


Subscription date : 30 November 2007
Messages : 17118
oki thanks for the hint ! I'll try that

mtasaka, Saturday 17 May 2008 à 18:49


Subscription date : 16 May 2008
Messages : 106
Oky, now plugin directory is correctly moved to @libdir@/cairo-dock and
cairo-dock.pc.in description is proper. Thank you.

The rest issue is how to write configure.ac or so which calls configure/make recursively
on plugin directory....

fabounet, Monday 19 May 2008 à 13:30


Subscription date : 30 November 2007
Messages : 17118
that's it I'd really like to have a solution for that !

Git Version | Version Git

Subjects Author Language Messages Last message
[Locked] Rev 984: FHS violation of plugin directory
mtasaka English 5 fabounet [Read]
19 May 2008 à 13:30


Glx-Dock / Cairo-Dock List of forums Git Version | Version Git Rev 984: FHS violation of plugin directory Top

Online users :

Powered by ElementSpeak © 2007 Adrien Pilleboue, 2009-2013 Matthieu Baerts.
Dock based on CSS Dock Menu (Ndesign) with jQuery. Icons by zgegball
Cairo-Dock is a free software under GNU-GPL3 licence. First stable version created by Fabounet.
Many thanks to TuxFamily for the web Hosting and Mav for the domain name.