summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-03-16 21:46:29 +0100
committerLudovic Courtès <ludo@gnu.org>2023-03-16 23:03:17 +0100
commit8f219e658d8d2d89a2d6ec10729099130791a3a2 (patch)
tree5b7302a7e432be59f8317be12fff01dd772bd851
parent9cb17464679de2c29aa6db0b0a11142bfb4ca042 (diff)
downloadguix-8f219e658d8d2d89a2d6ec10729099130791a3a2.tar.gz
home: services: kodi, znc, ssh-agent: Use 'match-record'.
* gnu/home/services/media.scm (home-kodi-services): Use 'match-record'
instead of 'match'.
* gnu/home/services/messaging.scm (home-znc-services): Likewise.
* gnu/home/services/ssh.scm (home-ssh-agent-services): Likewise.
-rw-r--r--gnu/home/services/media.scm25
-rw-r--r--gnu/home/services/messaging.scm25
-rw-r--r--gnu/home/services/ssh.scm37
3 files changed, 42 insertions, 45 deletions
diff --git a/gnu/home/services/media.scm b/gnu/home/services/media.scm
index 25e83ea4b9..c6454dfe15 100644
--- a/gnu/home/services/media.scm
+++ b/gnu/home/services/media.scm
@@ -18,7 +18,6 @@
 
 (define-module (gnu home services media)
   #:use-module (srfi srfi-26)
-  #:use-module (ice-9 match)
   #:use-module (gnu home services)
   #:use-module (gnu home services shepherd)
   #:use-module (gnu packages kodi)
@@ -44,18 +43,18 @@
 
 (define (home-kodi-services config)
   "Return a <shepherd-service> for kodi with CONFIG."
-  (match config
-    (($ <home-kodi-configuration> kodi extra-options)
-     (let* ((kodi (file-append kodi "/bin/kodi"))
-            (command #~'(#$kodi "-fs" #$@extra-options))
-            (log-file #~(string-append %user-log-dir "/kodi.log")))
-       (list (shepherd-service
-              (documentation "Run the kodi media center.")
-              (provision '(kodi))
-              (modules '((shepherd support)))     ;for '%user-log-dir'
-              (start #~(make-forkexec-constructor #$command
-                                                  #:log-file #$log-file))
-              (stop #~(make-kill-destructor))))))))
+  (match-record config <home-kodi-configuration>
+    (kodi extra-options)
+    (let* ((kodi (file-append kodi "/bin/kodi"))
+           (command #~'(#$kodi "-fs" #$@extra-options))
+           (log-file #~(string-append %user-log-dir "/kodi.log")))
+      (list (shepherd-service
+             (documentation "Run the kodi media center.")
+             (provision '(kodi))
+             (modules '((shepherd support)))      ;for '%user-log-dir'
+             (start #~(make-forkexec-constructor #$command
+                                                 #:log-file #$log-file))
+             (stop #~(make-kill-destructor)))))))
 
 (define home-kodi-service-type
   (service-type
diff --git a/gnu/home/services/messaging.scm b/gnu/home/services/messaging.scm
index 2f1ac4c258..bd2f1bb23f 100644
--- a/gnu/home/services/messaging.scm
+++ b/gnu/home/services/messaging.scm
@@ -18,7 +18,6 @@
 
 (define-module (gnu home services messaging)
   #:use-module (srfi srfi-26)
-  #:use-module (ice-9 match)
   #:use-module (gnu home services)
   #:use-module (gnu home services shepherd)
   #:use-module (gnu packages messaging)
@@ -42,18 +41,18 @@
 
 (define (home-znc-services config)
   "Return a <shepherd-service> for znc with CONFIG."
-  (match config
-    (($ <home-znc-configuration> znc extra-options)
-     (let* ((znc (file-append znc "/bin/znc"))
-            (command #~'(#$znc "--foreground" #$@extra-options))
-            (log-file #~(string-append %user-log-dir "/znc.log")))
-       (list (shepherd-service
-              (documentation "Run the znc IRC bouncer.")
-              (provision '(znc))
-              (modules '((shepherd support)))     ;for '%user-log-dir'
-              (start #~(make-forkexec-constructor #$command
-                                                  #:log-file #$log-file))
-              (stop #~(make-kill-destructor))))))))
+  (match-record config <home-znc-configuration>
+    (znc extra-options)
+    (let* ((znc (file-append znc "/bin/znc"))
+           (command #~'(#$znc "--foreground" #$@extra-options))
+           (log-file #~(string-append %user-log-dir "/znc.log")))
+      (list (shepherd-service
+             (documentation "Run the znc IRC bouncer.")
+             (provision '(znc))
+             (modules '((shepherd support)))      ;for '%user-log-dir'
+             (start #~(make-forkexec-constructor #$command
+                                                 #:log-file #$log-file))
+             (stop #~(make-kill-destructor)))))))
 
 (define home-znc-service-type
   (service-type
diff --git a/gnu/home/services/ssh.scm b/gnu/home/services/ssh.scm
index 2eae08bd86..dc37ecf329 100644
--- a/gnu/home/services/ssh.scm
+++ b/gnu/home/services/ssh.scm
@@ -276,25 +276,24 @@ client,@command{ssh}, and by other tools such as @command{guix deploy}.")
 
 (define (home-ssh-agent-services config)
   "Return a <shepherd-service> for an ssh-agent with CONFIG."
-  (match config
-    (($ <home-ssh-agent-configuration>
-        openssh socket-directory extra-options)
-     (let* ((ssh-agent (file-append openssh "/bin/ssh-agent"))
-            (socket-file #~(string-append #$socket-directory "/socket"))
-            (command #~`(#$ssh-agent
-                         "-D" "-a" ,#$socket-file
-                         #$@extra-options))
-            (log-file #~(string-append %user-log-dir "/ssh-agent.log")))
-       (list (shepherd-service
-              (documentation "Run the ssh-agent.")
-              (provision '(ssh-agent))
-              (modules '((shepherd support)))   ;for '%user-runtime-dir', etc.
-              (start #~(lambda _
-                         (unless (file-exists? #$socket-directory)
-                           (mkdir-p #$socket-directory)
-                           (chmod #$socket-directory #o700))
-                         (fork+exec-command #$command #:log-file #$log-file)))
-              (stop #~(make-kill-destructor))))))))
+  (match-record config <home-ssh-agent-configuration>
+    (openssh socket-directory extra-options)
+    (let* ((ssh-agent (file-append openssh "/bin/ssh-agent"))
+           (socket-file #~(string-append #$socket-directory "/socket"))
+           (command #~`(#$ssh-agent
+                        "-D" "-a" ,#$socket-file
+                        #$@extra-options))
+           (log-file #~(string-append %user-log-dir "/ssh-agent.log")))
+      (list (shepherd-service
+             (documentation "Run the ssh-agent.")
+             (provision '(ssh-agent))
+             (modules '((shepherd support)))    ;for '%user-runtime-dir', etc.
+             (start #~(lambda _
+                        (unless (file-exists? #$socket-directory)
+                          (mkdir-p #$socket-directory)
+                          (chmod #$socket-directory #o700))
+                        (fork+exec-command #$command #:log-file #$log-file)))
+             (stop #~(make-kill-destructor)))))))
 
 (define home-ssh-agent-service-type
   (service-type