#+TITLE: Guix Configuration Disclaimer: I use the nonguix channel only for the use of Firefox (which I hope to replace with Nyxt Browser in the future). I do not use non-free software or non-free drivers/firmware on any machine I own, nor do I advocate for the use of the nonguix channel. I use GNU Guix as my operating system. I'm able to declare the state of the operating system in a series of configuration files in a similar way to Puppet. Eventually I would like to integrate Guix Home into this configuration. #+begin_src scheme (use-modules (gnu) (nongnu packages linux)) (use-service-modules cups desktop networking ssh xorg) (operating-system (kernel linux) (firmware (list linux-firmware)) (locale "en_US.utf8") (timezone "America/Los_Angeles") (keyboard-layout (keyboard-layout "us")) (host-name "borges") (users (cons* (user-account (name "opal") (comment "opal") (group "users") (home-directory "/home/opal") (supplementary-groups '("wheel" "netdev" "audio" "video"))) %base-user-accounts)) (packages (append (list (specification->package "awesome") (specification->package "nss-certs") (specification->package "xterm") (specification->package "emacs") (specification->package "git") (specification->package "bluez") (specification->package "bluez-alsa") (specification->package "pulseaudio") (specification->package "vim") (specification->package "exfat-utils") (specification->package "stow") (specification->package "stumpwm")) %base-packages)) (services (append (list (service gnome-desktop-service-type) (set-xorg-configuration (xorg-configuration (keyboard-layout keyboard-layout)))) %desktop-services)) (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (targets (list "/boot/efi")) (keyboard-layout keyboard-layout))) (mapped-devices (list (mapped-device (source (uuid "40aa6387-e935-4f70-8e7d-1975678a5a32")) (target "cryptroot") (type luks-device-mapping)))) (file-systems (cons* (file-system (mount-point "/") (device "/dev/mapper/cryptroot") (type "btrfs") (dependencies mapped-devices)) (file-system (mount-point "/boot/efi") (device (uuid "1C3B-10F5" 'fat32)) (type "vfat")) %base-file-systems))) #+end_src