My configs for both nixos and home manager only machines
Go to file
2024-06-05 13:39:25 -05:00
configs deduplicated host configs, defined more things in common.nix files. 2024-06-05 13:39:25 -05:00
hosts deduplicated host configs, defined more things in common.nix files. 2024-06-05 13:39:25 -05:00
lib inital steps into sops-nix. figured out ssh pubkey management. 2024-05-31 21:05:06 -05:00
modules tree-wide change. seperated config from 'real' modles. 2024-05-31 12:20:48 -05:00
packages deduplicated host configs, defined more things in common.nix files. 2024-06-05 13:39:25 -05:00
roles fully added laptop to nix-secrets. 2024-06-04 13:08:13 -05:00
templates added enable option to nvim 2024-05-29 13:40:03 -05: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 inital attempt at getting lxc working. Currently home-manager is broken. 2024-06-04 23:35:32 -05:00
flake.nix added vm package. 2024-06-05 12:36:51 -05:00
justfile fully added laptop to nix-secrets. 2024-06-04 13:08:13 -05:00
LICENSE Initial commit 2024-03-24 01:38:27 +00:00
README.md updated readme with structure. 2024-05-31 13:53:59 -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.