My configs for both nixos and home manager only machines
Find a file
2025-06-15 21:54:12 +02:00
configs flake update, getting adgaurd working on the rockhole. 2025-06-15 14:24:32 +02:00
hosts fixed adgaurd home firewall rules. 2025-06-15 21:54:12 +02:00
lib Restic: made modular backup declerations. 2025-04-13 15:27:25 +02:00
modules added immich to the homelab. 2025-05-03 22:26:25 +02:00
packages Restic: made modular backup declerations. 2025-04-13 15:27:25 +02:00
roles added trip to terminal-minimal. Its a traceroute in rust. 2025-05-17 21:38:58 +02:00
templates ran formatter. 2025-02-25 12:49:21 +01:00
.editorconfig added editorconfig file. 2025-04-14 10:49:16 +02:00
.envrc start of a latepanda config. 2024-05-24 15:23:56 -05:00
.gitignore start of a latepanda config. 2024-05-24 15:23:56 -05:00
flake.lock flake update, getting adgaurd working on the rockhole. 2025-06-15 14:24:32 +02:00
flake.nix flake update, getting adgaurd working on the rockhole. 2025-06-15 14:24:32 +02:00
justfile ran formatter. 2025-02-25 12:49:21 +01:00
LICENSE Initial commit 2024-03-24 01:38:27 +00:00
README.md made nix-secrets input comment-out-able. 2024-06-12 14:40:04 -05:00

nix-config

My configs for both nixos and home manager only machines

structure

.
├── flake.nix
├── configs
│   ├── home-manager
│   └── nixos
├── hosts
├── modules
│   ├── home-manager
│   └── hostopts.nix
├── roles
│   ├── home-manager
│   └── nixos
└── templates
  • Configs set options and specify programs to be installed. They do not specify their own options, and take effect as soon as they are imported. Generally, a config will be specific to a single program, and possibly optional dependecies of the main program.
  • Hosts define specific hosts. They are the entry point into the system. Each host must import configs/nixos/common.nix in the top level and configs/home-manager/common.nix in the home-manager block. Each host must also define the variables declared in modules/hostopts.nix.
  • Modules are always imported by the respective common.nix. They each have an enable option, and only have effects if enabled.
  • Roles are larger bundles of software and options. They define packages to be installed and may import configurations or enable modules.

Secrets

This repo uses nix-sops for secrets management, with the encrypted secrets being stored in a private repo imported as an input. if the nix-secrets input is commented out, the repo should still build, gracefully degrading to default, non-secret, values.