2022-05-09 13:20:43 +02:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
: << '```bash'
|
|
|
|
|
|
|
|
# System Installer Script
|
|
|
|
|
improve installation, add support for:
ZFS, encryption (keys, keystore, LUKS), bootFS, ephemeral root (tmpfs, ZFS, F2FS, ...), testing in qemu, options & debugging, ... and many small things
2022-05-31 03:41:28 +02:00
|
|
|
This is a minimal example for an adjusted NixOS system installation using the functions defined in [`../lib/setup-scripts/`](../lib/setup-scripts/).
|
|
|
|
See its [README](../lib/setup-scripts/README.md) for more documentation.
|
2022-05-09 13:20:43 +02:00
|
|
|
|
|
|
|
|
improve installation, add support for:
ZFS, encryption (keys, keystore, LUKS), bootFS, ephemeral root (tmpfs, ZFS, F2FS, ...), testing in qemu, options & debugging, ... and many small things
2022-05-31 03:41:28 +02:00
|
|
|
## (Example) Implementation
|
2022-05-09 13:20:43 +02:00
|
|
|
|
|
|
|
```bash
|
improve installation, add support for:
ZFS, encryption (keys, keystore, LUKS), bootFS, ephemeral root (tmpfs, ZFS, F2FS, ...), testing in qemu, options & debugging, ... and many small things
2022-05-31 03:41:28 +02:00
|
|
|
|
|
|
|
# Replace the entry point with the same function:
|
2023-01-29 15:55:56 +01:00
|
|
|
function install-system {( set -o pipefail -u # (void)
|
|
|
|
trap - EXIT # start with empty traps for sub-shell
|
|
|
|
prepare-installer || exit
|
|
|
|
do-disk-setup "${argv[0]}" || exit
|
|
|
|
install-system-to $mnt || exit
|
2022-05-09 13:20:43 +02:00
|
|
|
)}
|
improve installation, add support for:
ZFS, encryption (keys, keystore, LUKS), bootFS, ephemeral root (tmpfs, ZFS, F2FS, ...), testing in qemu, options & debugging, ... and many small things
2022-05-31 03:41:28 +02:00
|
|
|
|
|
|
|
# ... could also replace any other function(s) ...
|