* gnu-build-system should set DESTDIR
@ 2014-02-10 8:19 John Darrington
2014-02-10 12:56 ` Ludovic Courtès
2014-02-10 12:58 ` Sree Harsha Totakura
0 siblings, 2 replies; 7+ messages in thread
From: John Darrington @ 2014-02-10 8:19 UTC (permalink / raw)
To: guix-devel
Per recent discussions:
I think the make install target in gnu-build-system should set DESTDIR to "/" (or "/.")
Rationale:
Many upstream makefiles (eg:
https://git.gnome.org/browse/gnome-themes-standard/tree/themes/HighContrast/icons/Makefile.am)
assume that when DESTDIR is unset (or is "") then the package is being installed in a "live" system:
if test -z "$(DESTDIR)"; then \
echo "Updating Gtk icon cache."; \
$(gtk_update_icon_cache); \
else \
echo "*** Icon cache not updated. After (un)install, run this:"; \
echo "*** $(gtk_update_icon_cache)"; \
fi
I have noticed that a number of packages in /nix/store/ have their own version
of icon-theme.cache leading to warnings when doing guix package --install
So we need to set DESTDIR to *something* and to arrange for some kind of post-install hook to update
the cache. The same goes for top level info nodes.
J'
--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: gnu-build-system should set DESTDIR
2014-02-10 8:19 gnu-build-system should set DESTDIR John Darrington
@ 2014-02-10 12:56 ` Ludovic Courtès
2014-02-10 14:42 ` John Darrington
2014-02-10 12:58 ` Sree Harsha Totakura
1 sibling, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2014-02-10 12:56 UTC (permalink / raw)
To: John Darrington; +Cc: guix-devel
John Darrington <john@darrington.wattle.id.au> skribis:
> I think the make install target in gnu-build-system should set DESTDIR to "/" (or "/.")
> Rationale:
>
> Many upstream makefiles (eg:
>
> https://git.gnome.org/browse/gnome-themes-standard/tree/themes/HighContrast/icons/Makefile.am)
We’re talking about GNOME makefiles only, I think. The snippet below is
clearly a hack IMO.
> assume that when DESTDIR is unset (or is "") then the package is being installed in a "live" system:
>
> if test -z "$(DESTDIR)"; then \
> echo "Updating Gtk icon cache."; \
> $(gtk_update_icon_cache); \
> else \
> echo "*** Icon cache not updated. After (un)install, run this:"; \
> echo "*** $(gtk_update_icon_cache)"; \
> fi
>
> I have noticed that a number of packages in /nix/store/ have their own version
> of icon-theme.cache leading to warnings when doing guix package --install
>
> So we need to set DESTDIR to *something* and to arrange for some kind of post-install hook to update
> the cache. The same goes for top level info nodes.
What about this: we add a GNOME build system doing a few things, such as
handling schemas [0] and setting DESTDIR if that’s a common idiom.
WDYT?
The post-install hook is definitely on the to-do list, but it needs a
bit of thought.
Thanks,
Ludo’.
[0] http://lists.gnu.org/archive/html/guix-devel/2013-10/msg00171.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: gnu-build-system should set DESTDIR
2014-02-10 12:56 ` Ludovic Courtès
@ 2014-02-10 14:42 ` John Darrington
2014-02-10 16:09 ` Ludovic Courtès
0 siblings, 1 reply; 7+ messages in thread
From: John Darrington @ 2014-02-10 14:42 UTC (permalink / raw)
To: Ludovic Court??s; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 440 bytes --]
On Mon, Feb 10, 2014 at 01:56:49PM +0100, Ludovic Court??s wrote:
We???re talking about GNOME makefiles only, I think. The snippet below is
clearly a hack IMO.
Two non-gnome packages which also do this include gnubik and pspp
J'
--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: gnu-build-system should set DESTDIR
2014-02-10 14:42 ` John Darrington
@ 2014-02-10 16:09 ` Ludovic Courtès
2014-02-10 16:53 ` John Darrington
0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2014-02-10 16:09 UTC (permalink / raw)
To: John Darrington; +Cc: guix-devel
John Darrington <john@darrington.wattle.id.au> skribis:
> On Mon, Feb 10, 2014 at 01:56:49PM +0100, Ludovic Court??s wrote:
>
> We???re talking about GNOME makefiles only, I think. The snippet below is
> clearly a hack IMO.
>
> Two non-gnome packages which also do this include gnubik and pspp
They do what? Their recipes don’t fiddle with DESTDIR, do they?
Ludo’.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: gnu-build-system should set DESTDIR
2014-02-10 16:09 ` Ludovic Courtès
@ 2014-02-10 16:53 ` John Darrington
0 siblings, 0 replies; 7+ messages in thread
From: John Darrington @ 2014-02-10 16:53 UTC (permalink / raw)
To: Ludovic Court??s; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 814 bytes --]
On Mon, Feb 10, 2014 at 05:09:10PM +0100, Ludovic Court??s wrote:
John Darrington <john@darrington.wattle.id.au> skribis:
> On Mon, Feb 10, 2014 at 01:56:49PM +0100, Ludovic Court??s wrote:
>
> We???re talking about GNOME makefiles only, I think. The snippet below is
> clearly a hack IMO.
>
> Two non-gnome packages which also do this include gnubik and pspp
They do what? Their recipes don???t fiddle with DESTDIR, do they?
No. No package should ever change the value of DESTDIR.
They simply update the icon cache iff $DESTDIR = ""
J'
--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: gnu-build-system should set DESTDIR
2014-02-10 8:19 gnu-build-system should set DESTDIR John Darrington
2014-02-10 12:56 ` Ludovic Courtès
@ 2014-02-10 12:58 ` Sree Harsha Totakura
2014-02-10 13:57 ` John Darrington
1 sibling, 1 reply; 7+ messages in thread
From: Sree Harsha Totakura @ 2014-02-10 12:58 UTC (permalink / raw)
To: guix-devel
On 02/10/2014 09:19 AM, John Darrington wrote:
> I think the make install target in gnu-build-system should set DESTDIR to "/" (or "/.")
> Rationale:
Setting DESTDIR will then make the install target to install files in
the chroot dir (most likely to /usr/local/ or the prefix dir inside
chroot) inside the chroot. But the intention is to install into a
directory given by the --prefix variable to `configure'.
Sree
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: gnu-build-system should set DESTDIR
2014-02-10 12:58 ` Sree Harsha Totakura
@ 2014-02-10 13:57 ` John Darrington
0 siblings, 0 replies; 7+ messages in thread
From: John Darrington @ 2014-02-10 13:57 UTC (permalink / raw)
To: Sree Harsha Totakura; +Cc: guix-devel
On Mon, Feb 10, 2014 at 01:58:35PM +0100, Sree Harsha Totakura wrote:
On 02/10/2014 09:19 AM, John Darrington wrote:
> I think the make install target in gnu-build-system should set DESTDIR to "/" (or "/.")
Setting DESTDIR will then make the install target to install files in
the chroot dir (most likely to /usr/local/ or the prefix dir inside
chroot) inside the chroot. But the intention is to install into a
directory given by the --prefix variable to `configure'.
Sree
Files are installed into $DESTDIR$prefix so setting DESTDIR to / will not break this.
J'
--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-02-10 16:54 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-10 8:19 gnu-build-system should set DESTDIR John Darrington
2014-02-10 12:56 ` Ludovic Courtès
2014-02-10 14:42 ` John Darrington
2014-02-10 16:09 ` Ludovic Courtès
2014-02-10 16:53 ` John Darrington
2014-02-10 12:58 ` Sree Harsha Totakura
2014-02-10 13:57 ` John Darrington
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).