From 053308211e587dd3d59409f191c54642efd60c20 Mon Sep 17 00:00:00 2001 From: Marek Paśnikowski Date: Fri, 18 Oct 2024 00:32:44 +0200 Subject: refactor(distribution): clean up before using sovereign --- suweren/system.scm | 200 ++++++++++++++++++++++++++++------------------------- 1 file changed, 104 insertions(+), 96 deletions(-) diff --git a/suweren/system.scm b/suweren/system.scm index 745e54b..f1fbe40 100644 --- a/suweren/system.scm +++ b/suweren/system.scm @@ -1,24 +1,26 @@ (define-module (suweren system) #:use-module (gnu packages kde-pim) ; kgpg - #:use-module (gnu services) ; modify-services + #:use-module (gnu services) ; modify-services ; profile-service-type - ; simple-service - #:use-module (gnu services base) ; guix-configuration - ; guix-service-type - ; login-configuration - ; login-service-type + ; simple-service + #:use-module (gnu services base) ; guix-configuration + ; guix-service-type + ; login-configuration + ; login-service-type #:use-module (gnu services desktop) ; %desktop-services - ; plasma-desktop-service-type + ; plasma-desktop-service-type #:use-module (gnu services sddm) ; sddm-configuration - ; sddm-service-type + ; sddm-service-type #:use-module (gnu services syncthing) ; syncthing-configuration ; syncthing-service-type #:use-module (gnu services xorg) ; gdm-service-type - #:use-module (gnu system) ; operating-system - ;; #:use-module (gnu system file-systems) ; %base-file-systems - #:use-module (gnu system shadow) ; %base-user-accounts - #:use-module (guix channels) ; %default-channels - #:use-module (guix gexp) ; plain-file + #:use-module (gnu system) ; operating-system + #:use-module (gnu system locale) + #:use-module (gnu system file-systems) ; %base-file-systems + #:use-module (gnu system shadow) ; %base-user-accounts + #:use-module (guix channels) ; %default-channels + #:use-module (guix gexp) ; plain-file + #:use-module (nongnu packages linux) #:use-module (suweren commons sudoers) ; %sudoers-specification* ) @@ -28,9 +30,8 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (define polish-locale - ((@ (gnu system locale) locale-definition) - (name polish-locale-string) - (source "pl_PL"))) + (locale-definition (name polish-locale-string) + (source "pl_PL"))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -41,79 +42,86 @@ ;; record* service (define profile (simple-service 'distribution-packages - profile-service-type - packages)) + profile-service-type + packages)) ;; record guix-configuration -> ;; record guix-configuration (define (guix configuration) (let* ((deployment-commit "c24ce7cb11e74da13d491f9de3c4b7040a069f43") - (distribution-commit "7d17bded11ef1239592e6e5abd40ceee1e99cbb8") - (marekpasnikowski-fingerprint - (openpgp-fingerprint "590E 500F E39D 26B3 E60B 743B 6D81 B120 7711 899F")) - (nonguix-commit "897c1a470da759236cc11798f4e0a5f7d4d59fbc") - (nonguix-fingerprint - (openpgp-fingerprint "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")) - - (deployment-introduction (make-channel-introduction deployment-commit - marekpasnikowski-fingerprint)) - (deployment-url "https://git.marekpasnikowski.pl/git/deployment.git") - (distribution-introduction (make-channel-introduction distribution-commit - marekpasnikowski-fingerprint)) - (distribution-url "https://git.marekpasnikowski.pl/git/distribution.git") - (nonguix-authorized-guix-key-content - (string-append - "(public-key \n" - "(ecc \n" - "(curve Ed25519) \n" - "(q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#))) \n")) - (nonguix-authorized-guix-key-name "nonguix-authorized-guix-key") - (nonguix-introduction (make-channel-introduction nonguix-commit - nonguix-fingerprint)) - (nonguix-url "https://gitlab.com/nonguix/nonguix") - - (deployment (channel (name 'deployment) - (url deployment-url) - (introduction deployment-introduction))) - (distribution (channel (name 'distribution) - (url distribution-url) - (introduction distribution-introduction))) - (nonguix (channel (name 'nonguix) - (url nonguix-url) - (introduction nonguix-introduction))) - (nonguix-key (plain-file nonguix-authorized-guix-key-name - nonguix-authorized-guix-key-content)) - - (nonguix-authorized-guix-keys (list nonguix-key)) - (nonguix-substitute-urls (list "https://substitutes.nonguix.org")) - (suweren-channels (list deployment - distribution - nonguix)) - - (%default-authorized-guix-keys* (append %default-authorized-guix-keys - nonguix-authorized-guix-keys)) - (%default-channels* (append %default-channels - suweren-channels)) - (%default-substitute-urls* (append %default-substitute-urls - nonguix-substitute-urls)) - (extra-options* (list "--gc-keep-derivations=yes" - "--gc-keep-outputs=yes"))) + (distribution-commit "7d17bded11ef1239592e6e5abd40ceee1e99cbb8") + (marekpasnikowski-fingerprint + (openpgp-fingerprint "590E 500F E39D 26B3 E60B 743B 6D81 B120 7711 899F")) + (nonguix-commit "897c1a470da759236cc11798f4e0a5f7d4d59fbc") + (nonguix-fingerprint + (openpgp-fingerprint "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")) + (sovereign-commit "44a44b4c3c645a878ab8920bf0d250541bf59af0") + + (deployment-introduction (make-channel-introduction deployment-commit + marekpasnikowski-fingerprint)) + (deployment-url "https://git.marekpasnikowski.pl/git/deployment.git") + (distribution-introduction (make-channel-introduction distribution-commit + marekpasnikowski-fingerprint)) + (distribution-url "https://git.marekpasnikowski.pl/git/distribution.git") + (nonguix-authorized-guix-key-content + (string-append + "(public-key \n" + "(ecc \n" + "(curve Ed25519) \n" + "(q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#))) \n")) + (nonguix-authorized-guix-key-name "nonguix-authorized-guix-key") + (nonguix-introduction (make-channel-introduction nonguix-commit + nonguix-fingerprint)) + (nonguix-url "https://gitlab.com/nonguix/nonguix") + (sovereign-introduction (make-channel-introduction sovereign-commit + marekpasnikowski-fingerprint)) + (sovereign-url "https://git.marekpasnikowski.pl/git/sovereign.git") + + (deployment (channel (name 'deployment) + (url deployment-url) + (introduction deployment-introduction))) + (distribution (channel (name 'distribution) + (url distribution-url) + (introduction distribution-introduction))) + (nonguix (channel (name 'nonguix) + (url nonguix-url) + (introduction nonguix-introduction))) + (nonguix-key (plain-file nonguix-authorized-guix-key-name + nonguix-authorized-guix-key-content)) + (sovereign (channel (name 'sovereign) + (url sovereign-url) + (introduction sovereign-introduction))) + + (nonguix-authorized-guix-keys (list nonguix-key)) + (nonguix-substitute-urls (list "https://substitutes.nonguix.org")) + (suweren-channels (list deployment + distribution + nonguix + sovereign)) + + (%default-authorized-guix-keys* (append %default-authorized-guix-keys + nonguix-authorized-guix-keys)) + (%default-channels* (append %default-channels + suweren-channels)) + (%default-substitute-urls* (append %default-substitute-urls + nonguix-substitute-urls)) + (extra-options* (list "--gc-keep-derivations=yes" + "--gc-keep-outputs=yes"))) (guix-configuration (inherit configuration) - (channels %default-channels*) - (authorized-keys %default-authorized-guix-keys*) - (substitute-urls %default-substitute-urls*) - (extra-options extra-options*)))) + (channels %default-channels*) + (authorized-keys %default-authorized-guix-keys*) + (substitute-urls %default-substitute-urls*) + (extra-options extra-options*)))) (define (locale-definitions*) - (use-modules (gnu system locale)) (append %default-locale-definitions - (list polish-locale))) + (list polish-locale))) ;; record login-configuration -> ;; record login-configuration (define (login configuration) (login-configuration (inherit configuration) - (allow-empty-passwords? #f))) + (allow-empty-passwords? #f))) ;; record syncthing-configuration (define syncthing-configuration* @@ -122,7 +130,7 @@ ;; record syncthing-service-type (define syncthing (service syncthing-service-type - syncthing-configuration*)) + syncthing-configuration*)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -130,35 +138,35 @@ #f) (define-public %suweren-file-systems - (@ (gnu system file-systems) %base-file-systems)) + %base-file-systems) (define-public %suweren-kernel - (@ (nongnu packages linux) linux)) + linux) (define-public %suweren-locale-definitions (locale-definitions*)) (define-public %suweren-services (let* ((sddm-configuration* (sddm-configuration (theme "breeze") - (auto-login-user "lilia"))) - - (plasma-desktop (service plasma-desktop-service-type)) - (sddm (service sddm-service-type - sddm-configuration*)) - - (%desktop-services* (modify-services %desktop-services - (delete gdm-service-type) - (guix-service-type configuration - => - (guix configuration)) - (login-service-type configuration - => - (login configuration))))) + (auto-login-user "lilia"))) + + (plasma-desktop (service plasma-desktop-service-type)) + (sddm (service sddm-service-type + sddm-configuration*)) + + (%desktop-services* (modify-services %desktop-services + (delete gdm-service-type) + (guix-service-type configuration + => + (guix configuration)) + (login-service-type configuration + => + (login configuration))))) (append %desktop-services* - (list plasma-desktop - profile - sddm - syncthing)))) + (list plasma-desktop + profile + sddm + syncthing)))) (define-public %suweren-users %base-user-accounts) -- cgit v1.2.3