mirror of
https://github.com/gensokyo-zone/infrastructure.git
synced 2026-02-09 12:29:19 -08:00
2.9 KiB
2.9 KiB
nixfiles
These are the NixOS configurations for my systems. I run nothing but NixOS on my hardware, aside from virtual machines.
CI
CI for this repository uses arcnmx/ci and aims to achieve two goals:
| Action | Purpose |
|---|---|
| nodes | Build and cache host closures, show state of host evaluability/buildability |
| niv-cron | Automatically update the dependencies used by the repository, cache them and host closure build results with them. |
Dependencies
| Dependency | Reasoning |
|---|---|
| nmattia/niv | Dependency management. Will move to flakes when stable. |
| nix-community/home-manager | home-manager. Self-explanatory. |
| nix-community/NUR | Firefox extensions and such. |
| arcnmx/tf-nix | The deploy system used, also provides DNS, secrets and node provisioning. (Anything terraform can do.) |
| arcnmx/ci | The CI integration system used. |
| arcnmx/nixexprs | Packages and modules I heavily make use of. |
| nix-community/impermanence | Impermanence! Erase your darlings. |
| kittywitch/anicca | A helper for moving to impermanence. |
| kittywitch/nixexprs | Packages and modules I have made. |
| nixos-mailserver | The mail server module I use. |
| hexchen/nixfiles | Yggdrasil module. Yggdrasil nodes. |
| nix-community/emacs-overlay | An overlay for emacs versions. Currently unused. |
| vlaci/nix-doom-emacs | Nixified DOOM emacs. Currently unused. |
Commands
The commands here aside from the nix build command are provided through the shell. The <target> and <host> commands are runners provided through arcnmx/tf-nix.
Please use nix-shell or direnv/direnv. The shell is not compatible with nix-community/nix-direnv.
| Command | Purpose |
|---|---|
nf-update |
Fancier niv update. |
nf-actions |
Updates CI integrations. |
nf-test |
Tests CI actions. |
<target>-apply |
Deploys to the provided target. |
<target>-tf |
Provides you a terraform shell for the provided target. |
<host>-ssh |
SSH into the provided host. |
nix build -f . network.nodes.<host>.deploy.system |
Build a system closure for the provided host. |