diff --git a/modules/oms/systems.scm b/modules/oms/systems.scm index 9739c64..65f6554 100644 --- a/modules/oms/systems.scm +++ b/modules/oms/systems.scm @@ -1,6 +1,7 @@ (define-module (oms systems) #:use-module (gnu) #:use-module (gnu packages cups) + #:use-module (gnu services admin) #:use-module (gnu services base) #:use-module (gnu services cups) #:use-module (gnu services desktop) @@ -94,3 +95,38 @@ (options "size=70%") (create-mount-point? #t))) %base-file-systems)))) + +(define-syntax-rule (define-system id os) + "Extend the operating system OS with unattended upgrades and define a varible +ID with the extended system as it's value." + (define-public id + (let ((base os)) + (operating-system + (inherit base) + (services + (append + (list (service unattended-upgrade-service-type + (unattended-upgrade-configuration + (channels + #~(cons (channel + (name 'oms-tietokoneet) + (url "https://git.olarinmaensamoojat.fi/OMS/tietokoneet.git") + (branch "main") + (introduction + (make-channel-introduction + "a3665902d411cd473636a836c2efd707b3a25cfd" + (openpgp-fingerprint + "A0C9 1947 734F 076F 5F08 E9FF 257D 284A 2A1D 3A32")))) + %default-channels)) + (operating-system-expression + #~(@ (oms systems) id))))) + (operating-system-user-services base))))))) + +(define-system oms-morn (base-operating-system "OMS-morn")) + +(define-system oms-celeb + (let ((base (base-operating-system "OMS-celeb"))) + (operating-system + (inherit base) + (initrd-modules + (append '("vmd") (operating-system-initrd-modules base))))))