My NixOS configuration files.
Find a file
Christoph Heiss a58177654c
readme: Drop mention of removed shell.nix
Fixes: e1723ca ("flake: Inline dev-shell setup")
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-08-11 16:07:42 +02:00
.git-crypt secrets: Update primary GPG key 2023-04-15 18:48:26 +02:00
common common: nix-options: Increase GC keepback to 14 days 2023-07-30 15:32:50 +02:00
extra pkgs: Add deploy-sink package 2023-07-31 20:03:02 +02:00
machines secrets: Add some deployment 2023-08-03 22:57:41 +02:00
modules/services services: Move custom homer service definition to modules 2023-05-10 21:38:19 +02:00
pkgs tree-wide: Consolidate all nixpkgs/home-manager sources 2023-07-31 22:47:23 +02:00
secrets secrets: web: Update deployment 2023-08-08 21:07:39 +02:00
services services: Update sourcehut; drop use of removed services array 2023-08-08 21:07:39 +02:00
system home-manager: desktop: Assign imv for opening .ico image files 2023-08-02 18:19:04 +02:00
.build.yml make: Check that all commits are properly signed on lint step 2023-07-05 18:31:23 +02: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 tree-wide: Consolidate all nixpkgs/home-manager sources 2023-07-31 22:47:23 +02:00
flake.lock flake: Update lockfile 2023-07-28 23:25:30 +02:00
flake.nix flake: Inline dev-shell setup 2023-08-08 21:07:39 +02:00
LICENSE Initial commit 2023-04-01 12:15:22 +02:00
Makefile machines: Add new fort 2023-07-28 23:24:47 +02:00
README.md readme: Drop mention of removed shell.nix 2023-08-11 16:07:42 +02:00
sources.nix services: Update sourcehut; drop use of removed services array 2023-08-08 21:07:39 +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.

    • fort: Public-reachable server on Hetzner infra.

    • name: LXC container running unbound + blocky.

    • 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.

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: