After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 504203 - doesn't install if libdir == libexecdir
doesn't install if libdir == libexecdir
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: general
2.21.x
Other Linux
: Normal blocker
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
: 504590 511736 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2007-12-18 09:03 UTC by Götz Waschk
Modified: 2008-02-01 21:50 UTC
See Also:
GNOME target: ---
GNOME version: 2.21/2.22


Attachments
Patch for lib/gnome-settings-daemon -> lib/gnome-settings-daemon-1.0 (8.39 KB, patch)
2008-01-31 23:30 UTC, Koop Mast (kwm)
none Details | Review
updated patch (807 bytes, patch)
2008-02-01 18:33 UTC, Christian Persch
accepted-commit_now Details | Review

Description Götz Waschk 2007-12-18 09:03:47 UTC
This is thie standalone release 2.21.4 of gnome-settings-daemon which is not a bugzilla product yet. The installation of gnome-settings-daemon fails on Mandriva, here both libdir and libexecdir are /usr/lib:

mkdir tries to create /usr/lib/gnome-settings-daemon/plugins/a11y-keyboard, but /usr/lib/gnome-settings-daemon already exists and is a file.
Comment 1 Jens Granseuer 2007-12-18 10:42:09 UTC
There's a release of g-s-d already? Jon, I guess this one's for you, then.
Comment 2 William Jon McCann 2007-12-21 05:52:46 UTC
*** Bug 504590 has been marked as a duplicate of this bug. ***
Comment 3 Götz Waschk 2008-01-15 15:34:20 UTC
This is not yet fixed in 2.21.5.
Comment 4 Patryk Zawadzki 2008-01-15 17:16:54 UTC
2.21.5 does install however it won't start as the executable lands in /usr/lib/gnome-settings-daemon/gnome-settings-daemon while service points to /usr/lib/gnome-settings-daemon. Not sure about 2.21.5.1 as it won't build.
Comment 5 Götz Waschk 2008-01-15 17:40:34 UTC
2.21.5.1 does install the daemon to /usr/lib/gnome-settings-daemon and the plugins to /usr/lib/gnome-settings-daemon/plugins, so it still does not work. 
Comment 6 Jens Granseuer 2008-01-24 20:34:59 UTC
*** Bug 511736 has been marked as a duplicate of this bug. ***
Comment 7 Wouter Bolsterlee (uws) 2008-01-28 14:08:37 UTC
2008-01-28  Wouter Bolsterlee  <wbolster@svn.gnome.org>

        * data/org.gnome.SettingsDaemon.service.in:
        * src/Makefile.am:

        Hopefully allow $(libdir) to be the same directory as
        $(libexecdir) by installing the gnome-settings-daemon
        binary into a subdirectory of $(libexecdir), i.e.
        $(libexecdir)/gnome-settings-daemon/gnome-settings-daemon.
        Fixes bug #504203.
Comment 8 Wouter Bolsterlee (uws) 2008-01-28 14:08:48 UTC
2008-01-28  Wouter Bolsterlee  <wbolster@svn.gnome.org>

        * src/Makefile.am:

        Don't use weird autofu stuff to install
        gnome-settings-daemon into another directory, but define
        gsddir and gsd_PROGRAMS instead. Fixes bug #504203.
Comment 9 Wouter Bolsterlee (uws) 2008-01-28 14:09:50 UTC
14:46:32 < fcrozat> uws: make uninstall doesn't work with your fix
14:47:07 < uws> fcrozat: which version?
14:47:13 < uws> fcrozat: r74 is a better fix
14:47:24 < fcrozat> uws: r73 I guess (I'm just messenger :)
14:47:33 < uws> fcrozat: svn up
14:47:36 < uws> fcrozat: thx
14:54:33 < fcrozat> uws: confirmed, it works fine
14:58:51 < uws> fcrozat: Great, does this solve your issues?
14:59:12 < fcrozat> uws: apparently, yes
Comment 10 William Jon McCann 2008-01-29 01:55:23 UTC
FYI: this change broke GDM which expects LIBEXEC /gnome-settings-daemon.
Comment 11 Wouter Bolsterlee (uws) 2008-01-29 09:29:31 UTC
Then GDM should be fixed imho.
Comment 12 Wouter Bolsterlee (uws) 2008-01-29 09:34:02 UTC
(In reply to comment #10)
> FYI: this change broke GDM which expects LIBEXEC /gnome-settings-daemon.

I filed bug #512745 for that.
Comment 13 Wouter Bolsterlee (uws) 2008-01-29 17:13:55 UTC
Reopening since the Debian people complained. There was even a revert on SVN because of that:

  http://svn.gnome.org/viewvc/gnome-settings-daemon?view=revision&revision=78

...but I do NOT agree with that since that reintroduces the issue described in the original bug report.
Comment 14 Brian Cameron 2008-01-29 17:29:52 UTC
It would seem to make more sense to me to fix this bug, and change GDM to expect g-s-d in the new location.  The only release of GDM that expects LIBEXEC/gnome-settings-daemon is the unstable 2.21 release.  So it shouldn't cause any stability issues to fix this in the GDM 2.21 release also.
Comment 15 Wouter Bolsterlee (uws) 2008-01-29 17:35:36 UTC
(In reply to comment #14)
> It would seem to make more sense to me to fix this bug [...]

Point is that the "correct" fix for this bug is not ideal for all of debian, mandriva, and opensolaris. After some IRC discussion the fix will most probably be something like this:

  - Have the gnome-settings-daemon binary as $libexecdir/gnome-settings-daemon
  - Put the plugins in $libdir/gnome-settings-daemon-2.22

That way both libdir==libexecdir (mandriva, opensolaris) and libexecdir==subdir-of-libdir (debian, ubuntu) configurations would work.
Comment 16 Jeremy Messenger 2008-01-30 04:51:41 UTC
Just a FYI, in FreeBSD:

libexecdir = $prefix/libexec
libdir = $prefix/lib
Comment 17 Jeremy Messenger 2008-01-30 05:02:30 UTC
>  - Put the plugins in $libdir/gnome-settings-daemon-2.22

Or how about version of plugins rather than version of gnome-settings-daemon something like $libdir/gnome-settings-daemon-2.0 (or 1.0) ? That way other applications don't have to chase (change/reinstall) at the every version of gnome-settings-daemon.
Comment 18 Darren Kenny 2008-01-30 09:39:53 UTC
I think Jeremy's idea makes a lot of sense - having the project version as opposed to API version would really be painful to maintain in the long term.

With respect to the GDM issue, it really shouldn't be looking for g-s-d in LIBEXECDIR, it should be using the pkg-config file to locate it, that way it would be always able to find it regardless of how a platform installs it.



Comment 19 Jens Granseuer 2008-01-30 14:27:27 UTC
Agreed. API/ABI version looks a lot more sensible than release number. Plus we have a pile of precedents in the platform.
Comment 20 Wouter Bolsterlee (uws) 2008-01-30 20:33:18 UTC
The current plugins are internal to g-s-d so the numbering doesn't really matter, but a gnome-settings-daemon-plugins-1.0 where 1.0 is the ABI version sounds like a sane solution to me.

Now, if someone would cook up a patch... ;-)
Comment 21 Götz Waschk 2008-01-31 10:22:06 UTC
FYI, it is broken again in 2.21.90.1, as g-s-d is installed in $libexecdir and the dbus service contains this:
Exec=@libexecdir@/gnome-settings-daemon/gnome-settings-daemon
Comment 22 Koop Mast (kwm) 2008-01-31 23:30:28 UTC
Created attachment 104153 [details] [review]
Patch for lib/gnome-settings-daemon -> lib/gnome-settings-daemon-1.0
Comment 23 Wouter Bolsterlee (uws) 2008-02-01 08:36:41 UTC
I think we should have the API/ABI version somewhere configurable in one central place, i.e. in configure.in, so that it can be easily bumped when API/ABI changes in the future.
Comment 24 Wouter Bolsterlee (uws) 2008-02-01 08:59:27 UTC
Btw, epiphany uses this in its configure.ac:

EPIPHANY_API_VERSION=2.22
Comment 25 Christian Persch 2008-02-01 18:33:07 UTC
Created attachment 104217 [details] [review]
updated patch

Much simpler now that bug 513246 is in: just redefine the plugindir in configure.
Comment 26 Christian Persch 2008-02-01 18:50:29 UTC
        * configure.ac: Install the settings plugin to
        $(libdir)/gnome-settings-daemon-2.0. Fixes install with libdir ==
        libexecdir, bug #504203.
Comment 27 Wouter Bolsterlee (uws) 2008-02-01 21:23:38 UTC
2.0 or 1.0? ;-)
Comment 28 Christian Persch 2008-02-01 21:50:23 UTC
It was committed with api-version 2.0 as per discussion with fizz on irc.