1.7 KiB
1.7 KiB
nixos
This repository contains my configuration for my Nixos systems. I don't provide any garantuees that it will work on other systems. In addition some of the scripts required for installation will destroy your data when used.
VM installation
This allows you to setup a VM with minimal effort. However this requires some prerequisites.
- A VM running the minimal NixOS ISO reachable with SSH under nixos@nixos.2li.local.
- The VM runs UEFI.
- You've set a password for the nixos user.
./scripts/install_new_vm.sh
- Provide the required information and wait until the script is finished.
- Reboot and profit!
Raspberry Pi installation
- Add the new system to
flake.nix
. - Build the image with
scripts/build-raspi-image.sh SYSTEMNAME
- Flash the image to an SD card
dd if=~/Downloads/SYSTEMNAME.img of=/dev/mmcblk0 bs=4M
. - After you've booted the Pi get the new SSH key with
ssh-keyscan hostname.custom.domain
and add it toscrts/secrets.nix
. - Then login into the new Pi and mount the
FIRMWARE
partition withsudo mkdir -p /mnt && sudo mount /dev/disk/by-label/FIRMWARE /mnt
and make sure that yourconfig.txt
looks like ./systems/raspi4/config.txt - Change the password
x86 installation
curl https://git.2li.ch/Nebucatnetzer/nixos/archive/master.tar.gz | tar xz
cd nixos && nix-shell
sudo python3 scripts/format-disk.py
sudo nixos-install --no-root-passwd --root /mnt --impure --flake .#SYSTEMNAME
Update remote systems
Simply run the script scripts/update_all_systems.xsh
and it will iterate over
all defined systems.
The script requires Xonsh but can be easily adapted to BASH or similar.
Non-Nixos System
scripts/install-home-manager.sh