guix-config icon indicating copy to clipboard operation
guix-config copied to clipboard

Personal Guix configuration

-- mode: org; org-html-head-include-default-style: nil; org-html-postamble: nil; org-export-with-author: nil; org-export-with-date: nil; --

#+OPTIONS: toc:nil num:nil

  • Guix Configuration This is my personal set of configuration files built around the [[https://guix.gnu.org/][GNU Guix]] package manager and the [[https://git.sr.ht/~abcdw/rde][RDE]] configuration framework.

To activate the current user's home configuration:

#+begin_src sh make home #+end_src

To activate a specific user's home configuration:

#+begin_src sh make home/reconfigure/$USER #+end_src

To activate the current host's system configuration:

#+begin_src sh make system #+end_src

To activate a specific host's system configuration:

#+begin_src sh make system/reconfigure/$HOST #+end_src

To deploy an entire system configuration and home configuration to a remote machine:

#+begin_src sh make deploy/$HOST/$USER #+end_src

To alleviate maintenance burden, I prefer working on top of Guix community [[https://guix.gnu.org/manual/en/html_node/Channels.html][channels]] to implement new features, which I define through lock files under the =./rde/= directory. If you wish to reproduce one of my setups, please make sure to consult the pinned commits on these files.