My NixOS configuration files.
Find a file
Christoph Heiss a964cac3d5
machines: back: add restricted backup user
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-12-28 14:54:02 +01:00
.git-crypt secrets: Update primary GPG key 2023-04-15 18:48:26 +02:00
common flake, sources: update nixpkgs to 29-11-2023, home-manager to 30-11-2023 2023-12-02 19:39:33 +01:00
extra extra: neomutt-export-patches: fix wrong parenthesis in subject regex 2023-12-15 13:13:07 +01:00
machines machines: back: add restricted backup user 2023-12-28 14:54:02 +01:00
modules/services modules: services: add new gatus module 2023-12-06 16:09:40 +01:00
pkgs flake, sources: update nixpkgs to 29-11-2023, home-manager to 30-11-2023 2023-12-02 19:39:33 +01:00
secrets secrets: maui: fix backup 2023-12-22 10:21:39 +01:00
services services: conduit: add restic backup job 2023-12-14 18:43:44 +01:00
system system: baremetal-server: enable rasdaemon 2023-12-25 22:13:11 +01:00
.build.yml build: Use new flake-based linting 2023-10-30 18:51:26 +01:00
.editorconfig tree-wide: Add support for formatting of Markdown and CSS with prettier 2023-04-24 21:19:08 +02:00
.gitattributes pkgs: Add homer and dashboard-icons 2023-05-09 17:11:05 +02:00
.gitignore Initial commit 2023-04-01 12:15:22 +02:00
.prettierrc.json tree-wide: Add support for formatting of Markdown and CSS with prettier 2023-04-24 21:19:08 +02:00
.stylua.toml build: Add stylua configuration for linting lua code 2023-04-18 20:55:16 +02:00
default.nix machines: Add back 2023-11-11 00:31:23 +01:00
flake.lock flake, sources: update nixpkgs to 29-11-2023, home-manager to 30-11-2023 2023-12-02 19:39:33 +01:00
flake.nix flake: add upload-secrets.<machine> apps 2023-12-04 20:39:28 +01:00
LICENSE Initial commit 2023-04-01 12:15:22 +02:00
Makefile flake: Switch maui home-manager deploy to flake-only too 2023-10-31 09:16:35 +01:00
README.md readme: explicitly document home-manager configuration 2023-12-20 10:46:17 +01:00
sources.nix flake, sources: update nixpkgs to 29-11-2023, home-manager to 30-11-2023 2023-12-02 19:39:33 +01:00
statix.toml build: Disable lint W23 (repeated_keys) for statix 2023-09-25 14:16:44 +02:00

My nixOS configuration

Structure

  • common: Contains configuration that should be applied on every machine.

  • extra: Non-Nix files, e.g. configuration files for other applications.

  • machines: Host-specific configuration.

    • back: Primary backup machine.

    • fort: Public-reachable server on Hetzner infra.

    • serv: LXC container running different services, like sourcehut and paperless.

    • trek: Framework laptop.

    • zero: Main Ryzen 9 workstation.

  • modules: Additional NixOS modules.

  • pkgs: Custom packages.

  • secrets: Secrects encrypted using git-crypt.

  • services: Configuration for bigger service deployments, e.g. nginx.

  • system: Configurations describing "classes" of machines, like servers or desktops.

  • system/home-manager: home-manager configuration.

Notable files

  • default.nix: Morph deployment definitions

  • flake.nix: Nix development shell definition

  • sources.nix: Contains all Nix package/module source definitions

Hacking

nix develop will provide an ephemeral shell with all tools needed.

License

The code is released into the public domain.

Other conditions apply to the following files: