Thanks David, I hear about it and read a bit every so often but haven’t managed to put it in a box so it hasn’t stuck. Reading the thread it looks like it has potential in the areas of:
- an alternative to containers for publishing code that can build on any system (by including a ‘guix.scm’ file:
Ship every FOSS project with a “guix.scm” file.
These can be used to set up dev environments with
“guix environment -l guix.scm”
Projects built using Guix as a dev environment are free from the “binary-black-box-container-only” plague, healthier for user freedom!
- a much easier way to distribute software across distros, partly because packaging is easier with the first feature and partly because the Guix package manager, soon to be part of Debian, should be available in many distros.
I’m not sure how realistic that is but it does sound much better than the existing packaging maintainer process. Maybe there are downsides too though.
If anyone has experience with creating a ‘guix.scm’ please let us know how it went and how useful it can be, also any drawbacks.
I read on the thread about it being restricted to FOSS but then somebody replied that’s a default rather than a restriction.
I guess for Safe cargo is pretty good, but a ‘guix.scm’ might make it trivial to provide the initial build environment. That’s what I’m thinking Christopher is saying. I’ll ask if he has a moment to comment.
Reading a bit about
guix environment CLI (here) I think it all looks very simple, much easier than I expected, so long as your build dependencies are already packaged for Guix. Short term that might be a blocker, needs checking, but if it takes off this could be good.