Hi Chris, Christopher Baines writes: > Hey! > > I think this has been talked about for a while [1], but I want to make it > happen. Currently the guix-daemon is still similar to the nix-daemon > that it was forked from, and is implemented in C++. I think that a Guile > implementation of the guix-daemon will simplify Guix and better support > hacking on and around the daemon to add new features and move Guix > forward. > > 1: https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/doc/ROADMAP.org#n71 > > My plan is to focus on this over the next year. I left my previous day > job quite a few months ago now to take a bit of a break, that's the main > reason I've been able to spend more time trying to push forward some of > the QA stuff. With some monetary support from NLNet [2], I'm planning to > continue this break and focus for the next year on getting a Guile > implementation of the guix-daemon written and adopted. Great and ambitious project! I am also interested in it and am willing to work on it (although at a much slower pace than you might). > 2: https://nlnet.nl/project/GuixDaemon-Guile/ > > Rewrites are risky because you only get the value right at the end, > therefore the priority is to get a minimal but viable implementation in > Guile that can be switched to, and not to get distracted on adding or > improving functionality unnecessarily. That is better done once the new > implementation has been adopted. > > While I think there's a substantial amount of work to do, progress > towards a Guile guix-daemon has already been made. There was a least one > GSoC project which did make progress, and there's Guile implementations > of some of the functionality in Guix already. > > Still though, I'd like to hear what people think about which direction > the implementation should go, and what features they'd like to see. Even > if those are not essential to make the Guile implementation viable, it > still might inform the direction to take. I think the #1 feature for me would be to have it completely unpriviledged using mount namespaces, so that you could still build software without needing to run the daemon on the system. You won't be able to run the built software without using namespaces as well though, but that still a step in the right direction imo. WDYT? -- Josselin Poiret