summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHilton Chain <hako@ultrarare.space>2025-06-16 00:18:54 +0800
committerHilton Chain <hako@ultrarare.space>2025-06-20 20:40:06 +0800
commit70a0de71d0c85c6c69b81c22040478081663d394 (patch)
treeb5c5b4301027a451bb805ea809053399d0bb1aa5
parent5c13dbf132cb2a542ff2899da51b0ad2dba2714a (diff)
transformations: Deduplicate transformed field values.
* nonguix/transformations.scm (nonguix-transformation-guix)[substitute-urls]: Delete duplicates. (nonguix-transformation-nvidia)[kernel-arguments]: Likewise.
-rw-r--r--nonguix/transformations.scm22
1 files changed, 14 insertions, 8 deletions
diff --git a/nonguix/transformations.scm b/nonguix/transformations.scm
index 1647c5bd..f3b5e771 100644
--- a/nonguix/transformations.scm
+++ b/nonguix/transformations.scm
@@ -2,6 +2,8 @@
;;; Copyright © 2025 Hilton Chain <hako@ultrarare.space>
(define-module (nonguix transformations)
+ #:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-26)
#:use-module (guix channels)
#:use-module (guix diagnostics)
#:use-module (guix gexp)
@@ -74,10 +76,11 @@ FIXME: GUIX-SOURCE? is disabled by default due to performance issue."
(cons %nonguix-signing-key
(guix-configuration-authorized-keys config)))
(substitute-urls
- `(,@(guix-configuration-substitute-urls config)
- ,@(if substitutes?
- '("https://substitutes.nonguix.org")
- '()))))))))))
+ (delete-duplicates
+ `(,@(guix-configuration-substitute-urls config)
+ ,@(if substitutes?
+ '("https://substitutes.nonguix.org")
+ '())))))))))))
(define* (nonguix-transformation-linux #:key (linux linux)
(firmware (list linux-firmware))
@@ -128,10 +131,13 @@ TODO: Xorg configuration."
(operating-system
(inherit os)
(kernel-arguments
- (cons* "modprobe.blacklist=nouveau"
- (string-append
- "nvidia_drm.modeset=" (if kernel-mode-setting? "1" "0"))
- (operating-system-user-kernel-arguments os)))
+ (delete-duplicates
+ (cons* "modprobe.blacklist=nouveau"
+ (string-append
+ "nvidia_drm.modeset=" (if kernel-mode-setting? "1" "0"))
+ (remove
+ (cut string-prefix? "nvidia_drm.modeset=" <>)
+ (operating-system-user-kernel-arguments os)))))
(services
`(,(or (assoc-ref %presets driver)
(leave