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

Reply via email to