diff options
author | Mark Nipper <nipsy@bitgnome.net> | 2024-03-31 02:40:11 -0700 |
---|---|---|
committer | Mark Nipper <nipsy@bitgnome.net> | 2024-03-31 02:40:11 -0700 |
commit | 76b3b07e7329be637b37f92e767595143d3b03fa (patch) | |
tree | ff674a9bc8d8e1cdba94cb0d1c13de28b75c1e74 /README | |
parent | 04fd53819ffce3e1275ec48bcdf71769414fdea1 (diff) | |
download | nix-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-- | README | 70 |
1 files changed, 70 insertions, 0 deletions
@@ -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 |