Subject: [bug#62411] [PATCH] environment: Add '--nesting'.

From: Ludovic Courtès <[email-masked]>
Date: Tue, 28 Mar 2023 15:50:20 +0200

Konrad Hinsen <[email-masked]> skribis:

> Except that I must have missed something:
>
>   $ guix time-machine --url=$HOME/src/guix --branch=wip-nested-containers -- shell -C -W -N make bash -- make all
>   Updating channel 'guix' from Git repository at '/home/hinsen/src/guix'...
>   guix time-machine: error: Git error: cannot locate remote-tracking
>   branch 'origin/keyring'

Maybe you need to run ‘git fetch’ and/or make sure the remote is called
“origin”?

> I worked around this using --disable-authentication, but I don't
> understand what's going wrong. My repository is a clone of the official
> repository at Savannah, and it does have a branch "origin/keyring".

Weird.  (You would have needed ‘--disable-authentication’ anyway, now
that I think about it, because the commit signed by you would have been
considered “inauthentic”.)

> The patch works as expected for me. I could simplify the instructions
> for running my example Makefile from
>
>    guix shell -C -N make bash guix nss-certs \
>        --expose=/var/guix/daemon-socket/socket \
>        --expose=/gnu/store \
>        -- make all
>
> to:
>
>    guix shell -C -W -N make bash \
>        -- make all
>
> and. more importantly, require much less explanation of ugly
> technicalities.

Yay!

> The full Makefile is attached for illustrating the context in which I
> (intend to) use this new feature. I use time-machine inside the recipes
> of my Makefile, in order to make them fully reproducible. This used to
> be a very expensive operation without the patch, because the
> time-machine in the container did not have access to the global cache on
> the host system. It is a lot faster now.
>
> So... where is the "like" button?  ;-)

Click here ➡ 👍 ⬅

Thanks a lot for testing!  If there are no further comments, I’ll push
it within a couple of days.

Ludo’.