Configuration of my nixos systems
Valentin Brandl
e515e87c7f
Flake lock file updates: • Removed input 'hyprland' • Removed input 'hyprland/aquamarine' • Removed input 'hyprland/aquamarine/hyprutils' • Removed input 'hyprland/aquamarine/hyprwayland-scanner' • Removed input 'hyprland/aquamarine/nixpkgs' • Removed input 'hyprland/aquamarine/systems' • Removed input 'hyprland/hyprcursor' • Removed input 'hyprland/hyprcursor/hyprlang' • Removed input 'hyprland/hyprcursor/nixpkgs' • Removed input 'hyprland/hyprcursor/systems' • Removed input 'hyprland/hyprlang' • Removed input 'hyprland/hyprlang/hyprutils' • Removed input 'hyprland/hyprlang/nixpkgs' • Removed input 'hyprland/hyprlang/systems' • Removed input 'hyprland/hyprutils' • Removed input 'hyprland/hyprutils/nixpkgs' • Removed input 'hyprland/hyprutils/systems' • Removed input 'hyprland/hyprwayland-scanner' • Removed input 'hyprland/hyprwayland-scanner/nixpkgs' • Removed input 'hyprland/hyprwayland-scanner/systems' • Removed input 'hyprland/nixpkgs' • Removed input 'hyprland/systems' • Removed input 'hyprland/xdph' • Removed input 'hyprland/xdph/hyprland-protocols' • Removed input 'hyprland/xdph/hyprland-protocols/nixpkgs' • Removed input 'hyprland/xdph/hyprland-protocols/systems' • Removed input 'hyprland/xdph/hyprlang' • Removed input 'hyprland/xdph/nixpkgs' • Removed input 'hyprland/xdph/systems' • Removed input 'hyprland-contrib' • Removed input 'hyprland-contrib/nixpkgs' • Removed input 'hyprland-plugins' • Removed input 'hyprland-plugins/hyprland' • Removed input 'hyprland-plugins/nixpkgs' • Removed input 'hyprland-plugins/systems' |
||
---|---|---|
hardware | ||
home | ||
machines | ||
roles | ||
users | ||
configuration.nix | ||
flake.lock | ||
flake.nix | ||
hardware-configuration-current.nix | ||
README.md | ||
renovate.json5 | ||
role-current.nix |
NixOS Configuration
Now using Flakes \o/
Updating Channels/the Lockfile
nix flake lock
nix flake update
Installing/Updating the System
sudo nixos-rebuild switch --flake <path-to-repo>#<hostname>
sudo nixos-rebuild switch --flake .#w1n5t0n
Mail Setup
secret-tool store --label 'foo@example.com' email 'foo@example.com'
Encrypted Btrfs Setup
- cryptsetup luksFormat --format=luks1 /...
- cryptsetup luksOpen /... system
- mkfs.btrfs /dev/mapper/system
- mount /dev/mapper/system /mnt
- btrfs subvolume create /mnt/root
- btrfs subvolume create /mnt/home
- btrfs subvolume create /mnt/nix
- btrfs subvolume create /mnt/swap
subvolume | mount options |
---|---|
home |
compress=zstd |
swap |
compress=zstd,noatime |
root |
compress=zstd |
nix |
compress=zstd,noatime |
/boot/efi
as vfat TODO: partitioning command- TODO: create swap
- mount subvolumes
- `nixos-generate-config --root /mnt
- add mount options in
hardware-configuration.nix
/ create matching configuration in./machines
- TODO: config for luks, bootloader, ...
- For
snapper
: create.snapshots
subvolume in each subvolume to be backed up