No.2527
Guix is great, though I could never get it to play nice with Doom Emacs, which was a dealbreaker at the time (I'm not using Doom Emacs anymore, but as far as I can tell the only way to maintain config for your software like this is to build it as a Guix package, which I just don't have the time or energy for). I ran it for a couple of months on my hobby laptop, though I got tired of the build-times for some packages when substitutes weren't available (especially non-free Linux kernels, which I would leave running overnight and sometimes come back to the kernel still being built in the morning).I do think though that declarative operating systems are the future, because the implications are amazing for deployment of many machines, as well as maintaining your own workstation - you make some configuration change to a particular service in your OS declaration, build and switch to that OS you've declared, and if you fucked up you rollback.What really excites me is that Guix is just the package manager - even though we call the distribution based on on this package manager `Guix System', in reality every system configuration for Guix is its own distribution of GNU/Linux. Some future non-Guix project could `downstream' Guix by way of providing some standard distributions (read: `operating-system' configuration files with useful collections of packages, services, configuration, etc.) users could make use of, adding new channels with non-free software that users could opt-in to if they have e.g. a wifi card with non-free drivers, and providing some helpful configuration tools, e.g. for setting up and maintaining profiles, which don't require you to be pretty well versed in Scheme to have a working, maintainable distribution. Maybe this project could maintain build servers for the more popular software which isn't available in the standard Guix build repositories. We could have all sorts of Linux distributions which are built on the Guix package manager, and switching between these distributions would just be a matter of running `guix system reconfigure'. I think the possibilities here are incredible, and I'm pretty excited for it - for now though I've got Slackware on my laptop, so I can keep my distance from systemd while having a distribution that gives me most of what I could possibly need from a system out of the box.