Pancake, On 2020-09-21 3:32, Buttery Pancake wrote:
I was looking at a NixCon 2019 session called "Guix from the Nix Perspective" (https://www.youtube.com/watch?v=bDGzCXr6VYU).
Bookmarked, thanks!
I am wondering why Guix chose `/var/guix` path instead of `/gnu/var/guix` or `/guix/var/guix`, as Nix uses `/nix/var/nix`?
Only Ludo' can answer this, but I think it's an attempt to follow FHS/GNU directory standards. Similar to how --localstatedir is wrong by default.
I considered it a bike shed until recently, when I first heard of people putting /gnu and /var on separate btrfs subvolumes for snapshotting. A bad idea on most distributions, of course, but Guix's database and store really are one unit -- like data and metadata. If your database gets corrupted, lost, or significantly out of sync, Guix will happily delete store items to match it, up to and including the last glibc. Ask me how I know.
I do think that having only one or two directories under root, `/gnu` and/or `/guix` is better, instead of having Guix related files under multiple directories (/var, /run etc.). It will be neat, clean and unique.
Moving the database to /gnu makes sense, but the rest of /var/guix belongs in /var. Same for /run: it's the right place for what's there. Don't let's reinvent the FHS poorly under /gnu. It's already pretty neat, and we're already unique.
Kind regards, T G-R Sent from a Web browser. Excuse or enjoy my brevity.