summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDan Rostovtsev <dan@rostovtsev.org>2026-03-14 22:01:04 -0400
committerDan Rostovtsev <dan@rostovtsev.org>2026-03-14 22:01:04 -0400
commitcfcadca2efda0b6e83a6f80f6582f291f1d6380a (patch)
tree0bfee1e1a1a29aea0b64c47653c7382f0a116627 /doc
parentedb73703365bec75af7b525e3e43365013e69bf7 (diff)
Added boot and SSH instructions after creating bootable guix os in linode.
Diffstat (limited to 'doc')
-rw-r--r--doc/guix-cookbook.texi52
1 files changed, 26 insertions, 26 deletions
diff --git a/doc/guix-cookbook.texi b/doc/guix-cookbook.texi
index c75e6b0e153..deb6c388471 100644
--- a/doc/guix-cookbook.texi
+++ b/doc/guix-cookbook.texi
@@ -3045,35 +3045,34 @@ image we may create later will not have any default users or SSH keys.
(service openssh-service-type
(openssh-configuration
(openssh openssh-sans-x)
- (password-authentication? #false)))
+ (password-authentication? #false)
+ ;; adding authorized keys is optional
+ ))
%base-services)))
@end lisp
Copy this to your linode in whatever directory you choose. In this
example, we choose to call the file @file{linode-guix.scm} and save it
-to @file{/tmp/linode-guix.scm}. Now we install a guix system
-realizing this config to /mnt/guix.
+to @file{/tmp/linode-guix.scm}.
+Due to the way we set up the bootloader section of the
+@file{guix-config.scm}, only the grub configuration file will be
+installed. So, we need to copy over some of the other GRUB stuff
+already installed on the Debian system.
+
+@c maybe this would benefit from a derivation?
+@c ideally all of this goes away...
+@c the best way to do this would be to simply upload an image...
@example
-guix system init guix-config.scm /mnt/guix
+cp -r /boot/grub/* /mnt/guix/boot/grub/ # extra grub files
@end example
-@c TODO: check grub files are installed by above config
-
-@c Due to the way we set up the bootloader section of the guix-config.scm,
-@c only the grub configuration file will be installed. So, we need to copy
-@c over some of the other GRUB stuff already installed on the Debian system:
-
-@c @example
-@c mkdir -p /mnt/guix/boot/grub
-@c cp -r /boot/grub/* /mnt/guix/boot/grub/
-@c @end example
-
-@c Now initialize the Guix installation:
+Now we are ready to install a guix system realizing this config to
+@file{/mnt/guix}.
-@c @example
-@c guix system init guix-config.scm /mnt/guix
-@c @end example
+@example
+guix system init /tmp/linode-guix.scm /mnt/guix
+@end example
Now that our Guix disk is fully populated, we are ready to power down
the linode and configure a new virtual machine which boots from the Guix
@@ -3109,19 +3108,20 @@ Turn off all the filesystem/boot helpers
We are now ready to boot the Guix operating system. First, power down
the linode. Then boot from your Guix configuration.
+If you want to save an image of your Linode, now is the time to do
+it. Navigate to ``Images'', then ``Create Image'' and select your
+current compute instance.
+
We cannot yet login over SSH because our configured system did not
specify authorized keys. This is intentional, as we do not want our
default system to have fixed SSH keys. Chances are we will build a
linode image containing this default system, and we don't want to mix
the system with the credentials.
-If you want to save an image of your Linode, now is the time to do
-it. Navigate to ``Images'', then ``Create Image'' and select your
-current compute instance.
-
-To add the SSH keys for normal login we use the ``LISH'' console. Append
-your public SSH keys to login to ``/root/.ssh/authorized_keys'' as
-usual. Now you are able to login with root over SSH as usual.
+To add the SSH keys for normal login we use the ``LISH'' console. If
+that is buggy, reboot with the default Debian and place the authorized
+keys you want in @file{/root/.ssh/authorized_keys}. Now you are able to
+login with root over SSH as usual.
The Guix installation will have generated new configs for the SSH server
and you will encounter a scary man-in-the-middle warning if the server