Being able to rollback any change I make to the system, either package changes or system configuration, makes it completely unbreakable and provides great peace of mind. It means I can fully enjoy its rolling-release nature without worrying.
Having my entire system configuration declared in a single, robust programming language (Guile) across a small number of files makes it very easy to understand and just stick into source control to reproduce.
Being able to hack on it in a lisp (scheme) is the cherry on top, along with the great emacs integration. I would highly recommend it to any lisp/emacs/gnu enthusiasts.
looks great fellow guix user! dwl-guile and dato-guile look very interesting, i may need to switch to wayland soon and try it out (i’m currently using xmonad).
I have never used nix or nixos. I liked their shared idea (functional, atomic, reproducible systems), and so when I looked at their differences they seemed to all be pros for guix:
Clearer, more robust, more centralized documentation
GNU Project
Guile Scheme (Lisp) as opposed to Nix DSL
Unparalleled emacs integration
The only bittersweet aspect of guix compared to nix was the foss only stuff, as I do need some proprietary drivers, but nonguix is so easy it hasn't been a practical issue. And of course I am big advocate of free software so I like that guix is pushing that forward.
There's also a theoretical issue that guix has less packages, but the standard channel + nonguix has had everyhing I use.
Thanks for taking the time, I didn't know about nonguix! Not a big emacs perso, but do live in vim. Probably going to give guix a try this weekend, thanks for the inspiration.