guixsd-config

GuixSD configs for my systems
Log | Files | Refs

commit b2acd88c88c68dfbba448f477f6bdbb545fa9be1
parent 6d72f978c6008c8788c18d21c55b3f42b4450675
Author: Vineet Kumar <git@vineetk.net>
Date:   Tue,  5 May 2026 13:49:05 -0400

saklas: switch to linux-libre from linux

Diffstat:
Mepistemia/bootloader.scm | 18------------------
Mepistemia/services/zfs.scm | 16+++++++++++-----
Mepistemia/systems/demiurge.scm | 2+-
Mepistemia/systems/hastur.scm | 2+-
Mepistemia/systems/linux-initrd.scm | 46+++++++++++++++++++---------------------------
Mepistemia/systems/saklas.scm | 19++++++++-----------
6 files changed, 40 insertions(+), 63 deletions(-)

diff --git a/epistemia/bootloader.scm b/epistemia/bootloader.scm @@ -21,21 +21,3 @@ "set root=(hd0,gpt2)") ((" /store/") " /gnu/@/store/"))))))) - -;; TODO combine into previous with an argument? -(define-public grub-zfs-bios - (bootloader - (inherit grub-bootloader) - (name 'grub-zfs) - (installer - #~(lambda (bootloader targets mount-point) - (use-modules (guix build utils)) - (let ((standard-installer #$(bootloader-installer grub-bootloader))) - (standard-installer bootloader targets mount-point)) - (let ((grub-cfg (string-append mount-point "/boot/grub/grub.cfg"))) - (chmod grub-cfg #o644) - (substitute* grub-cfg - (("search --label --set [^ ]+") - "set root=(hd0,gpt2)") - ((" /store/") - " /gnu/@/store/"))))))) diff --git a/epistemia/services/zfs.scm b/epistemia/services/zfs.scm @@ -1,13 +1,13 @@ (define-module (epistemia services zfs) #:use-module (gnu services shepherd) - #:use-module (guix gexp) + #:use-module (gnu packages file-systems) #:use-module (epistemia packages zfs) - #:export (zfs-shepherd-services)) + #:use-module (guix gexp)) ;; from raid5atemyhomework's valiant efforts -(define zfs-shepherd-services - (let ((zpool (file-append zfs-linux "/sbin/zpool")) - (zfs (file-append zfs-linux "/sbin/zfs")) +(define* (make-zfs-shepherd-services zfs-package) + (let ((zpool (file-append zfs-package "/sbin/zpool")) + (zfs (file-append zfs-package "/sbin/zfs")) (scheme-modules `((srfi srfi-1) (srfi srfi-34) (srfi srfi-35) @@ -38,3 +38,9 @@ (invoke/quiet #$zfs "unmount" "-a" "-f") #f)))) (list zfs-scan zfs-automount))) + +(define-public zfs-shepherd-services + (make-zfs-shepherd-services zfs)) + +(define-public zfs-linux-shepherd-services + (make-zfs-shepherd-services zfs-linux)) diff --git a/epistemia/systems/demiurge.scm b/epistemia/systems/demiurge.scm @@ -129,7 +129,7 @@ '("zfs")) (simple-service 'zfs-shepherd-services shepherd-root-service-type - zfs-shepherd-services) + zfs-linux-shepherd-services) (simple-service 'zfs-shepherd-services-user-processes user-processes-service-type '(zfs-automount)) diff --git a/epistemia/systems/hastur.scm b/epistemia/systems/hastur.scm @@ -120,7 +120,7 @@ '("zfs")) (simple-service 'zfs-shepherd-services shepherd-root-service-type - zfs-shepherd-services) + zfs-linux-shepherd-services) (simple-service 'zfs-shepherd-services-user-processes user-processes-service-type '(zfs-automount)) diff --git a/epistemia/systems/linux-initrd.scm b/epistemia/systems/linux-initrd.scm @@ -106,15 +106,15 @@ MODULES." (define* (zfs-raw-initrd file-systems #:key - (linux linux-libre) + (linux-package linux-libre) (zfs-package zfs) (linux-modules '()) (pre-mount #t) (mapped-devices '()) (keyboard-layout #f) (helper-packages '()) - qemu-networking? - volatile-root? + (qemu-networking? #f) + (volatile-root? #f) (on-error 'debug) (monkey-patch? #t) #:allow-other-keys) @@ -150,7 +150,7 @@ MODULES." #t)) (define kodir - (flat-linux-module-directory* linux + (flat-linux-module-directory* linux-package (list (gexp-input zfs-package "module")) linux-modules)) @@ -228,25 +228,23 @@ MODULES." (define* (epistemia-zfs-initrd file-systems #:key - (linux linux-libre) + (linux-package linux-libre) (zfs-package zfs) - (linux-modules '()) - (mapped-devices '()) - (keyboard-layout #f) - qemu-networking? - volatile-root? - (extra-modules '()) - (on-error 'debug) (monkey-patch? #t) - #:allow-other-keys) - + (linux-modules '()) + (extra-modules '()) + (qemu-networking? #f) + (volatile-root? #f) + (keyboard-layout #f) + #:allow-other-keys + #:rest rest) + "Build INITRD, extended to import root-on-zfs pool." (define linux-modules* (cons "zfs" `(,@linux-modules ,@(file-system-modules file-systems) ,@(if volatile-root? '("overlay") '()) ,@extra-modules))) - (define helper-packages (cons zfs-package (append (file-system-packages file-systems @@ -254,15 +252,9 @@ MODULES." (if keyboard-layout (list loadkeys-static) '())))) - - (zfs-raw-initrd file-systems - #:linux linux - #:zfs-package zfs-package - #:linux-modules linux-modules* - #:mapped-devices mapped-devices - #:helper-packages helper-packages - #:keyboard-layout keyboard-layout - #:qemu-networking? qemu-networking? - #:volatile-root? volatile-root? - #:on-error on-error - #:monkey-patch? monkey-patch?)) + (apply zfs-raw-initrd + file-systems + `(#:linux-package ,linux-package + #:zfs-package ,zfs-package + #:monkey-patch? ,monkey-patch? + ,@rest))) diff --git a/epistemia/systems/saklas.scm b/epistemia/systems/saklas.scm @@ -2,6 +2,7 @@ #:use-module (gnu) #:use-module (gnu packages bash) #:use-module (gnu packages emacs) + #:use-module (gnu packages file-systems) #:use-module (gnu packages golang-crypto) #:use-module (gnu packages linux) #:use-module (gnu packages mail) @@ -26,15 +27,12 @@ #:use-module (guix gexp) #:use-module (guix transformations) #:use-module (guix utils) - #:use-module (nongnu packages linux) - #:use-module (nongnu system linux-initrd) #:use-module (epistemia bootloader) #:use-module (epistemia systems base-system) #:use-module (epistemia systems linux-initrd) #:use-module (epistemia services age-secret) #:use-module (epistemia services zfs) #:use-module (epistemia packages bittorrent) - #:use-module (epistemia packages zfs) #:use-module (ice-9 format)) (define %nginx-badboi @@ -228,16 +226,15 @@ table inet filter { (name "vmail")) %base-groups)) - (kernel linux-6.18) + (kernel linux-libre) (kernel-arguments (list "net.ifnames=0")) - (kernel-loadable-modules (list (list zfs-linux "module"))) + (kernel-loadable-modules (list (list zfs "module"))) (initrd (lambda (file-systems . args) - (apply microcode-initrd file-systems - #:initrd epistemia-zfs-initrd - #:zfs-package zfs-linux - args))) - (firmware (cons* amdgpu-firmware %base-firmware)) + (apply epistemia-zfs-initrd file-systems + #:linux-package linux-libre + #:zfs-package zfs + args))) (bootloader (bootloader-configuration (bootloader grub-zfs) @@ -277,7 +274,7 @@ table inet filter { (packages (append (list emacs-no-x git rsync - zfs-linux) + zfs) %base-packages)) (services (modify-services (append (list (service age-secret-service-type