|
My NixOS + nix-darwin configuration built with flakes. 📚 ndots.semi.sh - Full Documentation |
| Host | Platform | Arch | CPU | RAM | Role |
|---|---|---|---|---|---|
| mach | NixOS | x86_64 | Intel i7-10510U (4c/8t) | 24 GB | Personal laptop |
| dsd | NixOS | x86_64 | Intel i9-12900KS (16c/24t) | 64 GB | Work desktop |
| semi | NixOS | x86_64 | Intel i9-14900K (24c/32t) | 128 GB | Semi-personal |
| obox | NixOS | aarch64 | Ampere Neoverse-N1 (4c/4t) | 24 GB | Oracle Cloud VPS |
| bbox | NixOS | aarch64 | Ampere Neoverse-N1 (4c/4t) | 24 GB | Oracle Cloud VPS |
| jp-mbp | Darwin | aarch64 | Apple M4 | - | MacBook Pro |
# Install (from ISO or minimal ISO)
nix eval github:semi710/ndots#disko.partition \
--apply 'b: builtins.fromJSON (builtins.toJSON (b { device = "/dev/nvme0n1"; ssdOptions = []; }))' \
--impure > disko-config.nix
sudo disko --mode destroy,format,mount --yes-wipe-all-disks ./disko-config.nix
sudo nixos-install --no-root-passwd --root /mnt --flake github:semi710/ndots#<hostname># Remote install with nixos-anywhere and a home-path sops age key
name=<hostname>
user=<user>
ip=<ip>
tmp="$(mktemp -d)"
trap 'rm -rf "$tmp"' EXIT
keydir="$tmp/home/$user/.config/sops/age"
install -d -m 700 "$keydir"
install -m 600 "$HOME/.config/sops/age/keys.txt" "$keydir/keys.txt"
nix run github:nix-community/nixos-anywhere -- \
--build-on remote \
--option accept-flake-config true \
--option download-buffer-size 536870912 \
--extra-files "$tmp" \
--chown "/home/$user/.config/sops/age" "$user:users" \
--generate-hardware-config nixos-generate-config "./hosts/nixos/$name/hardware.nix" \
--flake "path:$PWD#$name" \
--target-host "root@$ip"# Deploy
just deploy # Current host
just deploy obox # Remote host
just deploy bbox # Remote host
just iso # Build installer ISO- Utils - Utility scripts (Hyprland, Yabai, Rofi)
- nvix - Neovim configuration
- nix-wire - Flake auto-wiring library
- OG Branch - Full ricing with Hyprland/Wayland
Thanks to all the amazing NixOS community members whose configurations inspired this setup: iynaix, fufexan, nobbZ, lilleaila, vimjoyer, srid
