Ludovic Courtès <[email protected]> writes:
One thing that’s been discussed before is having (guix scripts
shell)
expose an <environment> structure to represent everything that
manifests
don’t represent: pure or container, shared directories,
preserved
environment variables, etc. That could be the first step.
Oh interesting, so a session, or whatever name you prefer, would
just be
a channels file, one or more manifests, and an <environment>.
That makes a nice clean separation between what goes in the
profile,
manifests, and how they are run, the environment.
Do you have any links to previous discussions about the desired
environment structure? Is anyone working on that now?
So the guix shell CLI would remain identical, but (guix scripts
shell)
would need some refactoring to gather the command line flags and
parameters into an environment structure? Then perhaps you would
want a
small API as a hook for other Guile code to drive guix shell
behavior
programmatically?