[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#26548: [PATCH v2 2/2] install: Enable SSH in installation image.
From: |
Marius Bakke |
Subject: |
bug#26548: [PATCH v2 2/2] install: Enable SSH in installation image. |
Date: |
Wed, 17 May 2017 14:15:17 +0200 |
* gnu/system/install.scm (%installation-services): Add OPENSSH-SERVICE.
* doc/guix.texi (Preparing for Installation)[Networking]: Document it.
---
doc/guix.texi | 11 +++++++++++
gnu/system/install.scm | 11 +++++++++++
2 files changed, 22 insertions(+)
diff --git a/doc/guix.texi b/doc/guix.texi
index b272fcec8..9d3b1fb1f 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -7446,6 +7446,17 @@ ping -c 3 gnu.org
Setting up network access is almost always a requirement because the
image does not contain all the software and tools that may be needed.
address@hidden installing over SSH
+From here you can proceed to do the rest of the installation remotely
+by starting an SSH server:
+
address@hidden
+herd start ssh-daemon
address@hidden example
+
+Make sure to either set a password with @command{passwd}, or configure
+OpenSSH public key authentication before logging in.
+
@subsubsection Disk Partitioning
Unless this has already been done, the next step is to partition, and
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index 191ccf168..327406b72 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -25,6 +25,7 @@
#:use-module (guix monads)
#:use-module ((guix store) #:select (%store-prefix))
#:use-module (gnu services shepherd)
+ #:use-module (gnu services ssh)
#:use-module (gnu packages admin)
#:use-module (gnu packages bash)
#:use-module (gnu packages bootloaders)
@@ -262,6 +263,16 @@ You have been warned. Thanks for being so brave.
;; To facilitate copy/paste.
(gpm-service)
+ ;; Add an SSH server to facilitate remote installs.
+ (service openssh-service-type
+ (openssh-configuration
+ (port-number 22)
+ (permit-root-login #t)
+ ;; The root account is passwordless, so make sure
+ ;; a password is set before allowing logins.
+ (allow-empty-passwords? #f)
+ (password-authentication? #t)))
+
;; Since this is running on a USB stick with a unionfs as the root
;; file system, use an appropriate cache configuration.
(nscd-service (nscd-configuration
--
2.13.0