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:
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