aboutsummaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorMark Nipper <nipsy@bitgnome.net>2024-03-31 02:40:11 -0700
committerMark Nipper <nipsy@bitgnome.net>2024-03-31 02:40:11 -0700
commit76b3b07e7329be637b37f92e767595143d3b03fa (patch)
treeff674a9bc8d8e1cdba94cb0d1c13de28b75c1e74 /README
parent04fd53819ffce3e1275ec48bcdf71769414fdea1 (diff)
downloadnix-76b3b07e7329be637b37f92e767595143d3b03fa.tar
nix-76b3b07e7329be637b37f92e767595143d3b03fa.tar.gz
nix-76b3b07e7329be637b37f92e767595143d3b03fa.tar.bz2
nix-76b3b07e7329be637b37f92e767595143d3b03fa.tar.lz
nix-76b3b07e7329be637b37f92e767595143d3b03fa.tar.xz
nix-76b3b07e7329be637b37f92e767595143d3b03fa.tar.zst
nix-76b3b07e7329be637b37f92e767595143d3b03fa.zip
Migrate to more modular layout
Diffstat (limited to 'README')
-rw-r--r--README70
1 files changed, 70 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..4384a3b
--- /dev/null
+++ b/README
@@ -0,0 +1,70 @@
+# boot NixOS installer
+# connect wireless
+# start terminal
+passwd
+sudo passwd
+sudo systemctl restart sshd
+# connect remotely via SSH to IP from: ip a s
+
+DISK=/dev/disk/by-id/nvme-SAMSUNG_MZVL21T0HCLR-00BL2_S64NNX0T233166
+cat /dev/urandom > ${DISK}
+wipefs ${DISK}; sgdisk -z ${DISK}; sgdisk -og ${DISK}
+sgdisk --new 1::+1G --typecode=1:EF00 --change-name=1:'boot' ${DISK}
+sgdisk --new 2::+32G --typecode=2:8200 --change-name=2:'swap' ${DISK}
+sgdisk --new 3::-0 --typecode=3:BF00 --change-name=3:'rpool' ${DISK}
+partprobe
+udevadm settle
+fdisk -l ${DISK}
+mkfs.fat -F32 -nboot ${DISK}-part1
+mkswap -L swap ${DISK}-part2
+swapon /dev/disk/by-label/swap
+zpool create -o ashift=12 -o autotrim=on -O acltype=posixacl -O compression=on -O dnodesize=auto -O normalization=formD -O encryption=on -O keyformat=passphrase -O keylocation=prompt -O relatime=on -O xattr=sa -O mountpoint=none -O canmount=off -f rpool ${DISK}-part3
+zfs create -p -o mountpoint=legacy rpool/local/root
+zfs snapshot rpool/local/root@blank
+mount -t zfs rpool/local/root /mnt
+mkdir /mnt/boot
+mount /dev/disk/by-label/boot /mnt/boot
+zfs create -p -o mountpoint=legacy rpool/local/nix
+mkdir /mnt/nix
+mount -t zfs rpool/local/nix /mnt/nix
+zfs create -p -o mountpoint=legacy rpool/user/home/root
+mkdir /mnt/root
+mount -t zfs rpool/user/home/root /mnt/root
+zfs create -p -o mountpoint=legacy rpool/user/home/nipsy
+mkdir -p /mnt/home/nipsy
+mount -t zfs rpool/user/home/nipsy /mnt/home/nipsy
+
+nixos-generate-config --root /mnt
+
+cat <configuration.nix >/mnt/etc/nixos/configuration.nix
+cat <hardware-configuration.nix >/mnt/etc/nixos/hardware-configuration.nix
+
+# unstable might be directly installable by first doing:
+# see https://github.com/NixOS/nixpkgs/issues/35362
+#nix-channel --add https://nixos.org/channels/nixos-unstable nixos
+#nix-channel --update
+
+#nixos-install --root /mnt
+nixos-install
+
+cd /
+umount -Rl /mnt
+zpool export -a
+reboot
+
+# upgrade to unstable
+nix-channel --add https://nixos.org/channels/nixos-unstable nixos
+nixos-rebuild switch --upgrade
+
+# later upgrades after flakes are enabled
+cd /etc/nixos && nix flake update && cd && nixos-rebuild switch --upgrade && echo && nixos-rebuild list-generations | cat && echo && nix store diff-closures $(find /nix/var/nix/profiles -iname system-\* -type l | sort | tail -2 | xargs)
+
+# clean up all but the two most recent systems
+nixos-rebuild list-generations | cat
+rm $(ls /nix/var/nix/profiles/system-*-link -1dtr | head -n -2)
+nixos-rebuild list-generations | cat
+nix-store --gc
+nixos-rebuild boot
+
+# deduplicate the store
+nix store optimise