I've been playing around with changing the default shell for some Makefiles to a shell inside a docker container (with dependencies baked in). It's a bit hacky, but kind of interesting!
[0] https://www.gnu.org/software/make/manual/html_node/Choosing-...