Hey Pierre,
On Mon, Nov 04 2019, Pierre Neidhardt wrote:
As I understand it, the current discussion is about "pinning"
profiles.
Should any dependency get garbage collected, an environment will
need
Internet access to refetch the missing parts; I think this is
what we
are trying to avoid, regardless of how fast `guix environment`
is.
What about `guix environment --pin` instead of `guix develop`?
Have you used `guix environment --root`?
In my git checkout of the Guix repository I once ran `guix
environment guix --root=.environment`, and now whenever I want to
hack on Guix I start a shell and `source
.environment/etc/profile`. The .environment symlink is treated as
a GC root by Guix, and because I'm not actually invoking Guix
there's never a risk that it will attempt to fetch anything from
the internet.
Upgrading the environment is quite easy, and must be done
manually: I delete the existing symlink and run `guix environment
guix --root=.environment` again. If I'm feeling paranoid I'll run
`guix environment guix` once first to make sure it succeeds,
before deleting the old symlink and adding the
`--root=.environment` to the end.
Carlo