update README

This commit is contained in:
Daniel Langbein 2023-12-21 16:34:17 +01:00
parent fdfb419b6f
commit 34227a6f1b
Signed by: langfingaz
GPG Key ID: 6C47C753F0823002

View File

@ -13,12 +13,12 @@ See also:
* [Table of Contents](#table-of-contents)
* [NixOS installation](#nixos-installation)
* [Graphical installation](#graphical-installation)
* [Remote installation: disko and nixos-anywhere](#remote-installation-disko-and-nixos-anywhere)
* [ARM device: SD image for the Raspberry Pi 3B+](#arm-device-sd-image-for-the-raspberry-pi-3b)
* [ISO](#iso)
* [Default configuration](#default-configuration)
* [Apply modified configuration](#apply-modified-configuration)
* [ARM device: Vanilla UEFI bootloader for the Raspberry Pi 3B+](#arm-device-vanilla-uefi-bootloader-for-the-raspberry-pi-3b)
* [Remote installation: disko and nixos-anywhere](#remote-installation-disko-and-nixos-anywhere)
* [ARM: SD image for the Raspberry Pi 3B+](#arm-sd-image-for-the-raspberry-pi-3b)
* [ISO creation](#iso-creation)
* [Default configuration](#default-configuration)
* [Apply modified configuration](#apply-modified-configuration)
* [ARM: Vanilla UEFI bootloader for the Raspberry Pi 3B+](#arm-vanilla-uefi-bootloader-for-the-raspberry-pi-3b)
* [Update, build and switch](#update-build-and-switch)
* [Update](#update)
* [Build and switch: Using Colmena](#build-and-switch-using-colmena)
@ -54,15 +54,15 @@ During installation:
* One 512MB (or larger) Fat32 partition, mounted at `/boot`, "boot" flag enabled
* Another partition (e.g. BTRFS) covering the rest of the drive, mounted at `/`, encryption enabled
## Remote installation: disko and nixos-anywhere
### Remote installation: disko and nixos-anywhere
Install NixOS via SSH everywhere.
There is a separate repository for these steps. Its README can be found here: https://codeberg.org/privacy1st/nixos-anywhere-example/src/template/README.md
## ARM device: SD image for the Raspberry Pi 3B+
### ARM: SD image for the Raspberry Pi 3B+
### ISO
#### ISO creation
If you are on an architecture other than aarch64, enable emulation: `boot.binfmt.emulatedSystems = [ "aarch64-linux" ];`.
@ -81,13 +81,13 @@ ls result/sd-image/*.img
Alternatively to emulating the aarch64 architecture we could also cross compile from e.g. x86 to it. However, this has one big drawback: The binary cache (https://cache.nixos.org/) won't be used. The reason for this is that packages built with cross compilation are (slightly) different from native built ones. Their checksums don't match.
### Default configuration
#### Default configuration
When the Raspberry Pi is booted, run `nixos-generate-config` to generate the default `configuration.nix` and `hardware-configuration.nix` files.
A slightly modified config can be found in [./hosts/pi3bplus/](./hosts/pi3bplus/)
A slightly modified config can be found in [./hosts/pi3bplus](./hosts/pi3bplus)
### Apply modified configuration
#### Apply modified configuration
The Rapberry Pi 3B+ has only 1GB RAM, which is not enough for `nixos-rebuild`. It is recommended to create and activate a SWAP file first: https://wiki.archlinux.org/title/swap#Swap_file_creation
@ -106,7 +106,7 @@ nixos-rebuild boot
reboot
```
## ARM device: Vanilla UEFI bootloader for the Raspberry Pi 3B+
### ARM: Vanilla UEFI bootloader for the Raspberry Pi 3B+
**TODO**: The EFI menu was working. But I got many squashfs errors when booting an USB stick with the NixOS installer.