summary refs log tree commit diff
path: root/gnu/installer/newt
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/newt
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/newt')
-rw-r--r--gnu/installer/newt/services.scm19
1 files changed, 18 insertions, 1 deletions
diff --git a/gnu/installer/newt/services.scm b/gnu/installer/newt/services.scm
index 2cbfc5ca36..e1faf4871d 100644
--- a/gnu/installer/newt/services.scm
+++ b/gnu/installer/newt/services.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -44,5 +45,21 @@ choose the one to use on the log-in screen.")
       (condition
        (&installer-step-abort))))))
 
+(define (run-networking-cbt-page)
+  "Run a page allowing the user to select networking services."
+  (run-checkbox-tree-page
+   #:info-text (G_ "You can now select networking services to run on your
+system.")
+   #:title (G_ "Network service")
+   #:items (filter networking-system-service? %system-services)
+   #:item->text system-service-name
+   #:checkbox-tree-height 5
+   #:exit-button-callback-procedure
+   (lambda ()
+     (raise
+      (condition
+       (&installer-step-abort))))))
+
 (define (run-services-page)
-  (run-desktop-environments-cbt-page))
+  (append (run-desktop-environments-cbt-page)
+          (run-networking-cbt-page)))