No description
  • Nix 94.9%
  • Shell 3.9%
  • CSS 1.2%
Find a file
2026-07-09 18:03:18 +02:00
hosts chore(update): lock and amd overdrive on kima 2026-07-09 18:03:18 +02:00
lib chore(format): treewide 2026-06-27 16:58:48 +02:00
modules chore(update): lock and cnixpost changes 2026-07-05 15:41:14 +02:00
pkgs chore(format): treewide 2026-06-27 16:58:48 +02:00
scripts chore(format): treewide 2026-06-27 16:58:48 +02:00
secrets Merge pull request 'smb share' (#5) from toothpc into main 2026-07-06 18:36:55 +02:00
system chore(format): treewide 2026-06-27 16:58:48 +02:00
.gitignore chore(update): flake lock 2026-01-21 18:36:50 +01:00
.hydra.json fix(hydra): forgejo branch uri hm 2026-05-26 20:21:12 +02:00
flake.lock chore(update): lock and amd overdrive on kima 2026-07-09 18:03:18 +02:00
flake.nix feat(install): small cheatsheet install md 2026-07-05 22:11:53 +02:00
hydra.nix chore(format): treewide 2026-06-27 16:58:48 +02:00
INSTALL.md tweak(install): slight update to nistall md 2026-07-06 18:44:15 +02:00
LICENSE changes to fix compliance with home server 2025-07-01 20:21:38 +02:00
README.md chore(readme): minor tweaks 2026-05-09 19:19:18 +02:00
treefmt.nix chore(format): tree wide 2026-06-20 11:17:23 +02:00

cnix

Note

This repository's listed contributors are bugged after I accidentally force pushed a cloned repo here.

My NixOS daily driver. Started as a single-machine Hyprland desktop and grew sideways, more workstations, a Raspberry Pi, and a homelab server. The configuration leans on small per-tool modules with a tiny custom helper (clib) for host-scoped enables.

Some tools and apps I use:

  • nh: A pretty cool "nix helper".
  • agenix: Age-based encryption.
  • hjem: Nix home management.
  • helix: Neat vim-like editor.
  • kanata: Keyboard mapping, good stuff.
  • quickshell: Wayland shell, replaced waybar.
  • fuzzel: App launcher, does what it says.
  • microfetch: It's neofetch but better.

Hosts

  • bunk: Thinkpad, L13 or thereabouts.
  • kima: Main desktop. 9950X, 6950 XT.
  • sobotka: Homelab server. 3950X, Intel B580, Radeon Pro W5700.
  • toothpc: Brother's desktop. Intel CPU, Nvidia GPU.
  • ziggy: Raspberry Pi running secondary pihole and unbound.

Structure

Quick map of the repository. Might not be 100% up to date.

hosts/        # Per-host configs (hardware, settings, hjem)
lib/          # Custom helpers etc
modules/
├ programs/   # Various program modules
├ services/   # Various service modules
├ server/     # Homelab modules, sobotka and ziggy exclusive
└ settings/   # Cross-cutting option declarations
pkgs/         # Custom packages
scripts/      # Shell scripts
secrets/      # Agenix-encrypted secrets
system/       # Flake-level wiring (users, variables, substituters)

The shared modules.nix file in modules/settings/ is a frequent edit point. Every supported module appears once, host-scoped via single-letter shorthands (k = kima, s = sobotka, etc.).

Inspiration

Much credit goes to the folks below, great resources! You'll find I've yanked plenty from them.