summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Paśnikowski <marek@marekpasnikowski.pl>2024-10-21 06:53:34 +0200
committerMarek Paśnikowski <marek@marekpasnikowski.pl>2024-10-21 06:53:34 +0200
commit6c46dcc7b514ab20d2edd04bfa860a8ba7f01808 (patch)
tree5d205b43d5dde1b2f5612cd40dd3461165fb09b9
parent053308211e587dd3d59409f191c54642efd60c20 (diff)
refactor(suweren): consolidate the configuration of guix in a single source
-rw-r--r--services/guix/channels.scm76
-rw-r--r--services/nonguix/substitute.scm32
-rw-r--r--suweren/services.scm22
-rw-r--r--suweren/system.scm2
4 files changed, 6 insertions, 126 deletions
diff --git a/services/guix/channels.scm b/services/guix/channels.scm
deleted file mode 100644
index fcc3ba5..0000000
--- a/services/guix/channels.scm
+++ /dev/null
@@ -1,76 +0,0 @@
-(define-module (services guix channels)
- #:use-module (gnu packages package-management)
- #:use-module (gnu services)
- #:use-module (gnu services base)
- #:use-module (guix channels))
-
-;;; DATA
-
-(define deployment-commit
- "c24ce7cb11e74da13d491f9de3c4b7040a069f43")
-
-(define deployment-url
- "https://git.marekpasnikowski.pl/git/deployment.git")
-
-(define distribution-commit
- "7d17bded11ef1239592e6e5abd40ceee1e99cbb8")
-
-(define distribution-url
- "https://git.marekpasnikowski.pl/git/distribution.git")
-
-(define marekpasnikowski-fingerprint
- (openpgp-fingerprint "590E 500F E39D 26B3 E60B 743B 6D81 B120 7711 899F"))
-
-(define nonguix-commit
- "897c1a470da759236cc11798f4e0a5f7d4d59fbc")
-
-(define nonguix-url
- "https://gitlab.com/nonguix/nonguix")
-
-(define nonguix-fingerprint
- (openpgp-fingerprint "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))
-
-;;; ABSTRACTION 3
-
-(define deployment-introduction
- (make-channel-introduction deployment-commit
- marekpasnikowski-fingerprint))
-
-(define distribution-introduction
- (make-channel-introduction distribution-commit
- marekpasnikowski-fingerprint))
-
-(define nonguix-introduction
- (make-channel-introduction nonguix-commit
- nonguix-fingerprint))
-
-;;; ABSTRACTION 2
-
-(define deployment
- (channel (name 'deployment)
- (url deployment-url)
- (introduction deployment-introduction)))
-
-(define distribution
- (channel (name 'distribution)
- (url distribution-url)
- (introduction distribution-introduction)))
-
-(define nonguix
- (channel (name 'nonguix)
- (url nonguix-url)
- (introduction nonguix-introduction)))
-
-;;; ABSTRACTION 1
-
-(define distribution-channels
- (append %default-channels
- (list deployment
- distribution
- nonguix)))
-
-;;; PUBLIC
-
-(define-public (channels config)
- (guix-configuration (inherit config)
- (channels distribution-channels)))
diff --git a/services/nonguix/substitute.scm b/services/nonguix/substitute.scm
deleted file mode 100644
index 4cf866a..0000000
--- a/services/nonguix/substitute.scm
+++ /dev/null
@@ -1,32 +0,0 @@
-(define-module (services nonguix substitute)
- #:use-module (gnu services base)
- #:use-module (guix gexp))
-
-;; DATA
-
-(define nonguix-authorized-guix-key-content
- (string-append "(public-key \n"
- "(ecc \n"
- "(curve Ed25519) \n"
- "(q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#))) \n"))
-
-(define nonguix-authorized-guix-key-name
- "nonguix-authorized-guix-key")
-
-(define nonguix-substitute-urls
- (list "https://substitutes.nonguix.org"))
-
-;; ABSTRACTION 1
-
-(define nonguix-authorized-guix-keys
- (list (plain-file nonguix-authorized-guix-key-name
- nonguix-authorized-guix-key-content)))
-
-;; PUBLIC
-
-(define-public (nonguix-substitute config)
- (guix-configuration (inherit config)
- (substitute-urls (append %default-substitute-urls
- nonguix-substitute-urls))
- (authorized-keys (append %default-authorized-guix-keys
- nonguix-authorized-guix-keys))))
diff --git a/suweren/services.scm b/suweren/services.scm
index faa8036..2809da0 100644
--- a/suweren/services.scm
+++ b/suweren/services.scm
@@ -9,19 +9,13 @@
#:use-module (gnu services sound)
#:use-module (gnu services syncthing)
#:use-module (gnu services xorg)
- #:use-module (services guix channels)
- #:use-module (services nonguix substitute)
#:use-module (services plasma-desktop)
#:use-module (suweren services desktop)
+ #:use-module ((suweren system)
+ #:prefix suweren-system:)
#:use-module (suweren trezor) ; trezor-bridge
#:use-module (upstream services nbfc))
-(define (guix-options configuration-record)
- (let ((extra-options (list "--gc-keep-derivations=yes"
- "--gc-keep-outputs=yes")))
- (guix-configuration (inherit configuration-record)
- (extra-options extra-options))))
-
(define-public %distribution-services
(let* ((cups-configuration* (cups-configuration (web-interface? #t)))
(nbfc-configuration* (nbfc-configuration (model "Acer Nitro AN515-43")))
@@ -33,15 +27,9 @@
(%desktop-services* (modify-services %desktop-services
(delete gdm-service-type)
(delete pulseaudio-service-type)
- (guix-service-type configuration
- =>
- (guix-options configuration))
- (guix-service-type configuration
- =>
- (channels configuration))
- (guix-service-type configuration
- =>
- (nonguix-substitute configuration))))
+ (guix-service-type configuration
+ =>
+ (suweren-system:guix configuration))))
(nbfc-service (service nbfc-service-type
nbfc-configuration*))
(plasma-desktop-service (service plasma-desktop-service-type))
diff --git a/suweren/system.scm b/suweren/system.scm
index f1fbe40..0bde7cb 100644
--- a/suweren/system.scm
+++ b/suweren/system.scm
@@ -47,7 +47,7 @@
;; record guix-configuration ->
;; record guix-configuration
-(define (guix configuration)
+(define-public (guix configuration)
(let* ((deployment-commit "c24ce7cb11e74da13d491f9de3c4b7040a069f43")
(distribution-commit "7d17bded11ef1239592e6e5abd40ceee1e99cbb8")
(marekpasnikowski-fingerprint