GNU bug report logs - #23132
Grafted system retains references to original store items

Previous Next

Package: guix;

Reported by: Mark H Weaver <mhw <at> netris.org>

Date: Mon, 28 Mar 2016 03:41:02 UTC

Severity: important

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

Full log


Message #20 received at 23132 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw <at> netris.org>
Cc: 23132 <at> debbugs.gnu.org
Subject: Re: bug#23132: Grafted system retains references to original store
 items
Date: Fri, 20 May 2016 18:03:59 +0200
Mark H Weaver <mhw <at> netris.org> skribis:

> ludo <at> gnu.org (Ludovic Courtès) writes:

[...]

>> What does “guix build glib” produce?  Is the “bin” output of “glib”
>> correctly grafted?
>
> It produces:
>
> /gnu/store/1my476c628x9kxa6pf2jlw8mhdlvr8xr-glib-2.46.1
> /gnu/store/yw2yjlc1mgb4ga6m28nazxwjfh1d2p1n-glib-2.46.1-bin
> /gnu/store/mm05frzzxa55kl062c4qp44qli00jnm4-glib-2.46.1-doc

The problem we have (also with currentish master) is that the grafted
glib refers to the non-grafted one:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build glib --no-grafts
/gnu/store/nnbd3mbb7cyzj3f9hmm84jwmhslx8jd1-glib-2.48.0-bin
/gnu/store/ijpqwljxn2j9nimjqnds58m2dzlcxf1g-glib-2.48.0-doc
/gnu/store/6m4xdh1rj3np9w2fikf8wlq6lka1hmsg-glib-2.48.0
$ ./pre-inst-env guix build glib
/gnu/store/40s3d59ig936fnqivyps3fwjzgm6m864-glib-2.48.0-bin
/gnu/store/fc5pcy9cj4r8plf7sxhykz3k7z03p22y-glib-2.48.0-doc
/gnu/store/vvdqmpm5biq2x3pw4s142qpcla2ryvax-glib-2.48.0
$ guix gc --references /gnu/store/vvdqmpm5biq2x3pw4s142qpcla2ryvax-glib-2.48.0|grep glib-
/gnu/store/6m4xdh1rj3np9w2fikf8wlq6lka1hmsg-glib-2.48.0
/gnu/store/vvdqmpm5biq2x3pw4s142qpcla2ryvax-glib-2.48.0
--8<---------------cut here---------------end--------------->8---

It took me a while to find out where that reference came from.  Since
‘grep -r’ returned nothing, I resorted to ‘guix archive --export’
searched for “6m4xdh1rj3np9w2fikf8wlq6lka1hmsg” in the result, and
found:

--8<---------------cut here---------------start------------->8---
$ find /gnu/store/vvdqmpm5biq2x3pw4s142qpcla2ryvax-glib-2.48.0 -name \*gdb.py
/gnu/store/vvdqmpm5biq2x3pw4s142qpcla2ryvax-glib-2.48.0/share/gdb/auto-load/gnu/store/6m4xdh1rj3np9w2fikf8wlq6lka1hmsg-glib-2.48.0/lib/libgobject-2.0.so.0.4800.0-gdb.py
/gnu/store/vvdqmpm5biq2x3pw4s142qpcla2ryvax-glib-2.48.0/share/gdb/auto-load/gnu/store/6m4xdh1rj3np9w2fikf8wlq6lka1hmsg-glib-2.48.0/lib/libglib-2.0.so.0.4800.0-gdb.py
--8<---------------cut here---------------end--------------->8---

So we need an extra pass in (guix build grafts) to rename files whose
name appears in the mapping.

I’ll try to get it done soonish.

Ludo’.




This bug report was last modified 9 years and 8 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.