The NixOS config for my Hetzner VPS
nixos
1{
2 inputs = {
3 nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
4 nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
5
6 nixvim = {
7 url = "github:nix-community/nixvim/nixos-25.11";
8 inputs.nixpkgs.follows = "nixpkgs";
9 };
10 agenix = {
11 url = "github:ryantm/agenix";
12 inputs = {
13 nixpkgs.follows = "nixpkgs";
14 darwin.follows = "";
15 home-manager.follows = "";
16 };
17 };
18 fenix = {
19 url = "github:nix-community/fenix";
20 inputs.nixpkgs.follows = "nixpkgs";
21 };
22 tangled = {
23 url = "git+https://tangled.org/tangled.org/core?ref=refs/tags/v1.11.0-alpha";
24 inputs = {
25 nixpkgs.follows = "nixpkgs-unstable";
26 flake-compat.follows = "";
27 };
28 };
29 };
30
31 outputs =
32 {
33 nixpkgs,
34 nixpkgs-unstable,
35 nixvim,
36 agenix,
37 fenix,
38 tangled,
39 ...
40 }:
41 let
42 system = "aarch64-linux";
43 in
44 {
45 nixosConfigurations.cherry = nixpkgs.lib.nixosSystem {
46 inherit system;
47
48 modules = [
49 {
50 nixpkgs.overlays = [
51 fenix.overlays.default
52 (final: prev: {
53 agenix = agenix.packages.${system}.default;
54 jujutsu = nixpkgs-unstable.legacyPackages.${system}.jujutsu;
55 })
56 ];
57 }
58
59 ./configuration.nix
60
61 nixvim.nixosModules.nixvim
62 agenix.nixosModules.default
63 tangled.nixosModules.knot
64 ];
65 };
66 };
67}