aboutsummaryrefslogtreecommitdiff
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
guix-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))