The same infrastructure with Nix can be used to build the site locally using Podman to run a Nix container and use a single command to trigger a reproducible build. This requires local installation of Podman and pulling the guix container before running ./container/nix-container.sh
.
Now the build sequence is a little longer but it is modular: ./container/nix-container.sh
→ ./container/nix-develop.sh
→ build.sh
→ build.el
→ MD
→ hugo
→ HTML
.
Note: currently the Nix image doesn’t cache the derivations for the added packages from flake.nix
: hugo
and emacs29-nox
. I’ll be looking into an “easy” caching solution.