No description
| .forgejo/workflows | ||
| assets | ||
| darwin | ||
| docs | ||
| home | ||
| hosts | ||
| lib | ||
| nixos | ||
| overlays | ||
| packages | ||
| scripts | ||
| secrets | ||
| vars | ||
| .envrc | ||
| .gitattributes | ||
| .gitignore | ||
| .markdownlint.json | ||
| CLAUDE.md | ||
| flake.lock | ||
| flake.nix | ||
| Justfile | ||
| README.md | ||
| renovate.json | ||
| shell.nix | ||
nix-skwrls
NixOS & NixDarwin configurations for all my systems.
Repository Structure
Core Files
flake.nix- Main flake definition with system buildersshell.nix- Development environment
Configuration Organization
lib/- Helper library functions and shared Nix configurationhosts/- Machine-specific configurations (each host directly imports needed modules)home/- Shared home-manager configurationsdarwin/- Shared Darwin configurationsnixos/- Shared NixOS module configurations (system, backups, desktop, gaming, streaming, work, docker)
Supporting Files
packages/- Custom package definitionsoverlays/- Nixpkgs overlays (applied via flake.nix)secrets/- SOPS-nix encrypted secretsvars/- Shared variables (user, home, email)
Quick Start
Set up the repo and your directory
git clone ...
cd nix-skwrls
# install lix
just init
nix devshell
Add the machine to secrets
cd secrets
direnv allow .
just get-host-key
vim .sops.yaml
just update
just rotate
cd ..
Converge box
cd ..
just switch
Thanks and References
These are other repos and resources that influenced and helped this a lot. In no particular order: