summary refs log tree commit diff
path: root/gnu/installer/services.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-04-07 18:02:39 +0200
committerLudovic Courtès <ludo@gnu.org>2019-04-07 18:02:39 +0200
commit7d1030a63592aa2f94f6617786f22cfa83fb346f (patch)
treec261d44ed8da00a6795e8dbcd96fdcfa93cf0afc /gnu/installer/services.scm
parent75988317b22efee2b2719e7d559fa9ff01a9db9a (diff)
downloadguix-7d1030a63592aa2f94f6617786f22cfa83fb346f.tar.gz
installer: Add dialog to select networking services.
* gnu/installer/newt/services.scm (run-networking-cbt-page): New procedure.
(run-services-page): Call it.
* gnu/installer/services.scm (%system-services): Add OpenSSH and Tor.
(networking-system-service?): New procedure.
* gnu/installer/steps.scm (format-configuration): Add 'networking' and
'ssh' to the service modules.
Diffstat (limited to 'gnu/installer/services.scm')
-rw-r--r--gnu/installer/services.scm19
1 files changed, 17 insertions, 2 deletions
diff --git a/gnu/installer/services.scm b/gnu/installer/services.scm
index 8e482b7246..cb1ddc8de8 100644
--- a/gnu/installer/services.scm
+++ b/gnu/installer/services.scm
@@ -26,6 +26,7 @@
             system-service-snippet
 
             desktop-system-service?
+            networking-system-service?
 
             %system-services
             system-services->configuration))
@@ -34,7 +35,7 @@
   system-service make-system-service
   system-service?
   (name            system-service-name)           ;string
-  (type            system-service-type)           ;symbol
+  (type            system-service-type)           ;'desktop | 'networking
   (snippet         system-service-snippet))       ;sexp
 
 ;; This is the list of desktop environments supported as services.
@@ -58,12 +59,26 @@
       (snippet '(service mate-desktop-service-type)))
      (desktop-environment
       (name "Enlightenment")
-      (snippet '(service enlightenment-desktop-service-type))))))
+      (snippet '(service enlightenment-desktop-service-type)))
+
+     ;; Networking.
+     (system-service
+      (name "OpenSSH secure shell daemon (sshd)")
+      (type 'networking)
+      (snippet '(service openssh-service-type)))
+     (system-service
+      (name "Tor anonymous network router")
+      (type 'networking)
+      (snippet '(service tor-service-type))))))
 
 (define (desktop-system-service? service)
   "Return true if SERVICE is a desktop environment service."
   (eq? 'desktop (system-service-type service)))
 
+(define (networking-system-service? service)
+  "Return true if SERVICE is a desktop environment service."
+  (eq? 'networking (system-service-type service)))
+
 (define (system-services->configuration services)
   "Return the configuration field for SERVICES."
   (let* ((snippets (map system-service-snippet services))