Subject: [bug#76501] [PATCH 0/1] Fix deployment of smaller Hetzner instances

From: "Benjamin" <[email-masked]>
Date: Sat, 22 Mar 2025 23:14:10 +0100

Hello,

I am coming a bit late for this issue, but I have found a technique that
might be usefull for related problems.

The problem here is we want to bootstrap guix on a small vps. When set
in "rescue mode" the vps root file system is really small and guix is too
big to be installed here before being moved to the "disk filesystem"
usually in /dev/sda

The workaround I found is to build a guix image locally, and stream the
result directly over ssh to the /dev/sda disk.

Once the vps is in rescue mode, this is done with such a command : 

cat $(guix system image minimal_os.scm) | ssh -C <IP> dd of=/dev/sda status=progress

Depending on the vps, --image-type=mbr-raw should be passed to guix
system image. This is the case for ovh.

Note that I also needed to add virtio driver for the minimal_os to work
  (initrd-modules (cons "virtio_scsi" %base-initrd-modules))

This technique worked so far with the smallest vps from ovh and scaleway.
Hovewer, I guess that as it should work for any vps where rescue mode
over ssh is available.

Hope this can help some of you

Benjamin