Re:The guide to software development with Guix
by dannymi on Thursday June 08, 2023 @08:12AM
(#36240561)
The manifest stuff is so you can have a more declarative way to specify packages (think Cargo.toml instead of mutable Debian installation).
(env)$ exit
$ guix package --export-manifest -p ~/profiles/developer
(specifications->manifest
(list "guix"
"coreutils"
"emacs"
"gfortran-toolchain"
"gcc-toolchain"))
$ guix package --export-manifest -p ~/profiles/developer > yourproject/manifest.scm
$ guix shell -C -m yourproject/manifest.scm
(env)$
Works the same as before. Now more declarative. And you can throw away ~/profiles/developer* now, it will be rebuilt each time (with caching, don't worry).
If you want to containerize, you can do that, too. Note that then you won't have any of the usual packages, including coreutils, available (no "ls" :) ):
It works! Well, that can't be good. It works!Note that the "-C" automatically also exposes the current directory that "guix shell" saw when starting up to the container.