GNOME Bugzilla – Bug 98434
--makefile-install-rule will install out-of-prefix
Last modified: 2018-08-17 13:59:19 UTC
When I configure Galeon from today's CVS (2002-11-13) with --prefix=/usr/local/stow/galeon-cvs and then attempt to install it (as non-root), it fails to install, for example like so: WARNING: failed to install schema `/schemas/apps/galeon/State/bookmarks_dialog_controls_show' locale `C': Failed: Could not make directory `/etc/gconf/gconf.xml.defaults/schemas/apps/galeon': Permission denied WARNING: failed to associate schema `/schemas/apps/galeon/State/js_console_show_errors' with key `/apps/galeon/State/js_console_show': Failed: Could not make directory `/etc/gconf/gconf.xml.defaults/apps/galeon': Permission denied This can easily be worked around with --with-gconf-source= and --with-gconf-schema-file-dir=, but IMHO the default should be to prepend $prefix to the defaults for these values; this corresponds with my understanding of $prefix's meaning (I'd rather the install be broken than touch directories above $prefix, IOW.)
I assume that this is still a problem?
It seems to be -- I'm not very sure of how gconf, autoconf & friends, and galeon interact, but I just (Dec 13) installed gconf from CVS, and galeon from CVS still says this during 'make install' when configured with --prefix=/usr/local/stow/galeon-cvs: Failed to write file `/etc/gconf/gconf.xml.defaults/schemas/apps/galeon/UI/Tabs/%gconf.xml.tmp': Permission denied Failed: Failed to write file `/etc/gconf/gconf.xml.defaults/schemas/apps/galeon/UI/Toolbar/%gconf.xml.tmp': Permission denied Failed: Failed to write file `/etc/gconf/gconf.xml.defaults/schemas/apps/galeon/UI/Windows/%gconf.xml.tmp': Permission denied Error syncing config data: Failed: Failed to sync XML cache contents to diskmake[2]: *** [install-data-local] Error 1 make[2]: Leaving directory `/home/localinst/src/galeon-cvs' make[1]: *** [install-am] Error 2 make[1]: Leaving directory `/home/localinst/src/galeon-cvs' make: *** [install-recursive] Error 1 localinst@pogo:~/src/galeon-cvs$
This is a dup of a bug I already closed IIRC. The problem with defaulting to --prefix is that it won't work. i.e. you'll start up Galeon and it will be totally broken. To make it work you have to edit your ~/.gconf.path file and add the gconf location in the prefix, as with /etc/gconf/2/path I could see it either way, though. Installing outside of prefix isn't very polite.
A big fat warning "install source != default gconf source. things will be broken if you don't include it in the gconf path" might be sufficient I guess.
A problem here is that --makefile-install-rule is also used in RPM %post (I guess this just means the fix here needs to be in configure.in)
*** Bug 102621 has been marked as a duplicate of this bug. ***
Re comment #3, when a user installs some software outside the default $prefix (e.g. in his home directory, because he has no root access), he should know that he may need to do changes in his configuration files. So, having to edit ~/.gconf.path isn't really a problem.
GConf has been deprecated since 2011. GConf is not under active development anymore. Its codebase has been archived: https://gitlab.gnome.org/Archive/gconf/commits/master dconf and gsettings are its successors. See https://developer.gnome.org/gio/stable/ch34.html and https://developer.gnome.org/GSettings/ for porting info. Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect reality. Feel free to open a task in GNOME Gitlab if the issue described in this task still applies to a recent + supported version of dconf/gsettings. Thanks!