Where Does Guix Keep Its Store and Profiles?
Where Guix keeps its store, state data, and profiles on Linux, and how user symlinks point into them.
Last updated
Guix centers on a read-only content-addressed store holding every built package under hash names. Stateful data like profiles live under /var/guix, while home symlinks point users at their generations. Daemon and substitutes orbit the same two roots.
Only Guix writes to the store; users link into it through profiles. Generations accumulate as links, making rollbacks trivial. Uninstalls must clear services, links, and both trees together or ghosts linger. Read the manual before pruning anything.
Where Guix stores this, by platform
/gnu/store
Read-only content-addressed package tree; only the daemon writes here. Profiles and state branch under /var/guix with home symlinks pointing in. Back up declarations and generations, never the store bulk.
Frequently asked questions
how do I back up a Guix system
Back up declarative configs and profile generations rather than the store itself, which rebuilds from definitions. The store is read-only content-addressed bulk. State under /var/guix plus home symlinks captures the rest.
where are installed packages listed
Inspect ~/.guix-profile and its generation links to see installed sets. System profiles live under /var/guix with per-user trees. The daemon owns writes; users only link.
how do I fully uninstall Guix
Remove service files, profile links, completions, and the store trees per the ArchWiki checklist. Stale symlinks in /usr/local outlive the store. Reinstalls start clean only after full removal.
Notice an outdated path? Let us know.