Some time ago someone posted a cool hack to use Emacs as the shell for Make, and today I had a related thought: Could I run my Makefile with guix shell --manifest=manifest.scm so that I always run with the correct dependencies installed?
Yes I can.
SHELL = guix
.SHELLFLAGS = shell --manifest=manifest.scm -- sh -c
first:
node --eval='console.log("hello!");'
With a manifest file:
(packages->manifest
(list (specification->package "node")))
Now I don't have to remember to load a guix shell before running my make commands 馃槉 I also added it to my Literate Build Files page on my site.
I'm guessing this is GNU Make specific, though, not portable.