Ludovic Courtès writes: > That sounds like a good idea. ‘guix develop’ could keep the profiles it > manages under ~/.cache/guix. > > Now, this would be very much stateful: you can’t tell in advance whether > you’re going to build a new profile based on the current Guix, or > whether you’re going to reuse a previously cached profile that could be > arbitrarily old. That doesn’t sound great. This could be fixed, maybe the following way: - Dump the channel specifications for every profile in etc/channel-spec.scm for instance. - Merge Konrad's time-machine script so that we can easily reuse a channel specification to activate a profile. > Perhaps we should focus on improving the performance of ‘guix > environment’ first and foremost? But isn't it orthogonal to this issue? 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`? -- Pierre Neidhardt https://ambrevar.xyz/