my nix configs for my servers and desktop

maintainence

Changed files
+600 -14
common
hosts
focalor
valefar
+1
common/services.nix
···
nixos-generators
sqlite
bun
];
services.openssh.enable = true;
···
nixos-generators
sqlite
bun
+
unzip
];
services.openssh.enable = true;
+598
flake.lock
···
···
+
{
+
"nodes": {
+
"agenix": {
+
"inputs": {
+
"darwin": "darwin",
+
"home-manager": "home-manager",
+
"nixpkgs": "nixpkgs",
+
"systems": "systems"
+
},
+
"locked": {
+
"lastModified": 1760836749,
+
"narHash": "sha256-wyT7Pl6tMFbFrs8Lk/TlEs81N6L+VSybPfiIgzU8lbQ=",
+
"owner": "ryantm",
+
"repo": "agenix",
+
"rev": "2f0f812f69f3eb4140157fe15e12739adf82e32a",
+
"type": "github"
+
},
+
"original": {
+
"owner": "ryantm",
+
"repo": "agenix",
+
"type": "github"
+
}
+
},
+
"catppuccin": {
+
"inputs": {
+
"nixpkgs": "nixpkgs_2"
+
},
+
"locked": {
+
"lastModified": 1760953099,
+
"narHash": "sha256-sOKx2YcHa+lWEvaEOIGqLN2WWk1Wf5z6KM02tdfhMtw=",
+
"owner": "catppuccin",
+
"repo": "nix",
+
"rev": "f5b21876888265d2fee7fb0640d1b66a1c1c6503",
+
"type": "github"
+
},
+
"original": {
+
"owner": "catppuccin",
+
"repo": "nix",
+
"type": "github"
+
}
+
},
+
"darwin": {
+
"inputs": {
+
"nixpkgs": [
+
"agenix",
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1744478979,
+
"narHash": "sha256-dyN+teG9G82G+m+PX/aSAagkC+vUv0SgUw3XkPhQodQ=",
+
"owner": "lnl7",
+
"repo": "nix-darwin",
+
"rev": "43975d782b418ebf4969e9ccba82466728c2851b",
+
"type": "github"
+
},
+
"original": {
+
"owner": "lnl7",
+
"ref": "master",
+
"repo": "nix-darwin",
+
"type": "github"
+
}
+
},
+
"disko": {
+
"inputs": {
+
"nixpkgs": "nixpkgs_3"
+
},
+
"locked": {
+
"lastModified": 1736864502,
+
"narHash": "sha256-ItkIZyebGvNH2dK9jVGzJHGPtb6BSWLN8Gmef16NeY0=",
+
"owner": "nix-community",
+
"repo": "disko",
+
"rev": "0141aabed359f063de7413f80d906e1d98c0c123",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-community",
+
"ref": "v1.11.0",
+
"repo": "disko",
+
"type": "github"
+
}
+
},
+
"flake-compat": {
+
"locked": {
+
"lastModified": 1696426674,
+
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
+
"owner": "edolstra",
+
"repo": "flake-compat",
+
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
+
"type": "github"
+
},
+
"original": {
+
"owner": "edolstra",
+
"repo": "flake-compat",
+
"type": "github"
+
}
+
},
+
"flake-utils": {
+
"inputs": {
+
"systems": "systems_2"
+
},
+
"locked": {
+
"lastModified": 1731533236,
+
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+
"type": "github"
+
},
+
"original": {
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"type": "github"
+
}
+
},
+
"flake-utils_2": {
+
"inputs": {
+
"systems": "systems_3"
+
},
+
"locked": {
+
"lastModified": 1731533236,
+
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+
"type": "github"
+
},
+
"original": {
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"type": "github"
+
}
+
},
+
"flake-utils_3": {
+
"inputs": {
+
"systems": "systems_5"
+
},
+
"locked": {
+
"lastModified": 1681202837,
+
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
+
"type": "github"
+
},
+
"original": {
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"type": "github"
+
}
+
},
+
"flakey-profile": {
+
"locked": {
+
"lastModified": 1712898590,
+
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
+
"owner": "lf-",
+
"repo": "flakey-profile",
+
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
+
"type": "github"
+
},
+
"original": {
+
"owner": "lf-",
+
"repo": "flakey-profile",
+
"type": "github"
+
}
+
},
+
"home-manager": {
+
"inputs": {
+
"nixpkgs": [
+
"agenix",
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1745494811,
+
"narHash": "sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs=",
+
"owner": "nix-community",
+
"repo": "home-manager",
+
"rev": "abfad3d2958c9e6300a883bd443512c55dfeb1be",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-community",
+
"repo": "home-manager",
+
"type": "github"
+
}
+
},
+
"home-manager_2": {
+
"inputs": {
+
"nixpkgs": [
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1761235135,
+
"narHash": "sha256-cux9xeceLIER1lBxUa1gMafkz7gg5ntcUmJBynWdBWI=",
+
"owner": "nix-community",
+
"repo": "home-manager",
+
"rev": "0adf9ba3f567da2d53af581a857aacf671aaa547",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-community",
+
"repo": "home-manager",
+
"type": "github"
+
}
+
},
+
"home-manager_3": {
+
"inputs": {
+
"nixpkgs": [
+
"zen-browser",
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1752603129,
+
"narHash": "sha256-S+wmHhwNQ5Ru689L2Gu8n1OD6s9eU9n9mD827JNR+kw=",
+
"owner": "nix-community",
+
"repo": "home-manager",
+
"rev": "e8c19a3cec2814c754f031ab3ae7316b64da085b",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-community",
+
"repo": "home-manager",
+
"type": "github"
+
}
+
},
+
"lix": {
+
"flake": false,
+
"locked": {
+
"lastModified": 1753223229,
+
"narHash": "sha256-tkT4aCZZE6IEmjYotOzKKa2rV3pGpH3ZREeQn7ACgdU=",
+
"rev": "7ac20fc47cf2f1b7469c7a2f379e5a3a51a6789a",
+
"type": "tarball",
+
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/7ac20fc47cf2f1b7469c7a2f379e5a3a51a6789a.tar.gz?rev=7ac20fc47cf2f1b7469c7a2f379e5a3a51a6789a"
+
},
+
"original": {
+
"type": "tarball",
+
"url": "https://git.lix.systems/lix-project/lix/archive/release-2.93.tar.gz"
+
}
+
},
+
"lix-module": {
+
"inputs": {
+
"flake-utils": "flake-utils",
+
"flakey-profile": "flakey-profile",
+
"lix": "lix",
+
"nixpkgs": [
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1753282722,
+
"narHash": "sha256-KYMUrTV7H/RR5/HRnjV5R3rRIuBXMemyJzTLi50NFTs=",
+
"rev": "46a9e8fcfe4be72b4c7c8082ee11d2c42da1e873",
+
"type": "tarball",
+
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/46a9e8fcfe4be72b4c7c8082ee11d2c42da1e873.tar.gz?rev=46a9e8fcfe4be72b4c7c8082ee11d2c42da1e873"
+
},
+
"original": {
+
"type": "tarball",
+
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-1.tar.gz"
+
}
+
},
+
"microvm": {
+
"inputs": {
+
"flake-utils": "flake-utils_2",
+
"nixpkgs": [
+
"nixpkgs"
+
],
+
"spectrum": "spectrum"
+
},
+
"locked": {
+
"lastModified": 1760574296,
+
"narHash": "sha256-S3gIp6Wd9vQ2RYDxcbHM2CIYgDtogbwzSdu38WABKaQ=",
+
"owner": "astro",
+
"repo": "microvm.nix",
+
"rev": "42628f7c61b02d385ce2cb1f66f9be333ac20140",
+
"type": "github"
+
},
+
"original": {
+
"owner": "astro",
+
"repo": "microvm.nix",
+
"type": "github"
+
}
+
},
+
"nixos-hardware": {
+
"locked": {
+
"lastModified": 1760958188,
+
"narHash": "sha256-2m1S4jl+GEDtlt2QqeHil8Ny456dcGSKJAM7q3j/BFU=",
+
"owner": "nixos",
+
"repo": "nixos-hardware",
+
"rev": "d6645c340ef7d821602fd2cd199e8d1eed10afbc",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nixos",
+
"ref": "master",
+
"repo": "nixos-hardware",
+
"type": "github"
+
}
+
},
+
"nixpkgs": {
+
"locked": {
+
"lastModified": 1754028485,
+
"narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "59e69648d345d6e8fef86158c555730fa12af9de",
+
"type": "github"
+
},
+
"original": {
+
"owner": "NixOS",
+
"ref": "nixos-25.05",
+
"repo": "nixpkgs",
+
"type": "github"
+
}
+
},
+
"nixpkgs-stable": {
+
"locked": {
+
"lastModified": 1748437600,
+
"narHash": "sha256-hYKMs3ilp09anGO7xzfGs3JqEgUqFMnZ8GMAqI6/k04=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "7282cb574e0607e65224d33be8241eae7cfe0979",
+
"type": "github"
+
},
+
"original": {
+
"id": "nixpkgs",
+
"ref": "nixos-25.05",
+
"type": "indirect"
+
}
+
},
+
"nixpkgs-unstable": {
+
"locked": {
+
"lastModified": 1723637854,
+
"narHash": "sha256-med8+5DSWa2UnOqtdICndjDAEjxr5D7zaIiK4pn0Q7c=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "c3aa7b8938b17aebd2deecf7be0636000d62a2b9",
+
"type": "github"
+
},
+
"original": {
+
"id": "nixpkgs",
+
"ref": "nixos-unstable",
+
"type": "indirect"
+
}
+
},
+
"nixpkgs_2": {
+
"locked": {
+
"lastModified": 1760524057,
+
"narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5",
+
"type": "github"
+
},
+
"original": {
+
"owner": "NixOS",
+
"ref": "nixos-unstable",
+
"repo": "nixpkgs",
+
"type": "github"
+
}
+
},
+
"nixpkgs_3": {
+
"locked": {
+
"lastModified": 1736241350,
+
"narHash": "sha256-CHd7yhaDigUuJyDeX0SADbTM9FXfiWaeNyY34FL1wQU=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "8c9fd3e564728e90829ee7dbac6edc972971cd0f",
+
"type": "github"
+
},
+
"original": {
+
"owner": "NixOS",
+
"ref": "nixpkgs-unstable",
+
"repo": "nixpkgs",
+
"type": "github"
+
}
+
},
+
"nixpkgs_4": {
+
"locked": {
+
"lastModified": 1761016216,
+
"narHash": "sha256-G/iC4t/9j/52i/nm+0/4ybBmAF4hzR8CNHC75qEhjHo=",
+
"owner": "nixos",
+
"repo": "nixpkgs",
+
"rev": "481cf557888e05d3128a76f14c76397b7d7cc869",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nixos",
+
"ref": "nixos-25.05",
+
"repo": "nixpkgs",
+
"type": "github"
+
}
+
},
+
"nixpkgs_5": {
+
"locked": {
+
"lastModified": 1682134069,
+
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
+
"owner": "NixOS",
+
"repo": "nixpkgs",
+
"rev": "fd901ef4bf93499374c5af385b2943f5801c0833",
+
"type": "github"
+
},
+
"original": {
+
"id": "nixpkgs",
+
"type": "indirect"
+
}
+
},
+
"proxmox-nixos": {
+
"inputs": {
+
"flake-compat": "flake-compat",
+
"nixpkgs-stable": "nixpkgs-stable",
+
"nixpkgs-unstable": "nixpkgs-unstable",
+
"utils": "utils"
+
},
+
"locked": {
+
"lastModified": 1758650077,
+
"narHash": "sha256-ZeRtJimtk0Faiq7DPZEQNGipda3TaR4QXp0TAzu934Q=",
+
"owner": "SaumonNet",
+
"repo": "proxmox-nixos",
+
"rev": "ce8768f43b4374287cd8b88d8fa9c0061e749d9a",
+
"type": "github"
+
},
+
"original": {
+
"owner": "SaumonNet",
+
"repo": "proxmox-nixos",
+
"type": "github"
+
}
+
},
+
"root": {
+
"inputs": {
+
"agenix": "agenix",
+
"catppuccin": "catppuccin",
+
"disko": "disko",
+
"home-manager": "home-manager_2",
+
"lix-module": "lix-module",
+
"microvm": "microvm",
+
"nixos-hardware": "nixos-hardware",
+
"nixpkgs": "nixpkgs_4",
+
"proxmox-nixos": "proxmox-nixos",
+
"vscode-server": "vscode-server",
+
"zen-browser": "zen-browser"
+
}
+
},
+
"spectrum": {
+
"flake": false,
+
"locked": {
+
"lastModified": 1759482047,
+
"narHash": "sha256-H1wiXRQHxxPyMMlP39ce3ROKCwI5/tUn36P8x6dFiiQ=",
+
"ref": "refs/heads/main",
+
"rev": "c5d5786d3dc938af0b279c542d1e43bce381b4b9",
+
"revCount": 996,
+
"type": "git",
+
"url": "https://spectrum-os.org/git/spectrum"
+
},
+
"original": {
+
"type": "git",
+
"url": "https://spectrum-os.org/git/spectrum"
+
}
+
},
+
"systems": {
+
"locked": {
+
"lastModified": 1681028828,
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+
"owner": "nix-systems",
+
"repo": "default",
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-systems",
+
"repo": "default",
+
"type": "github"
+
}
+
},
+
"systems_2": {
+
"locked": {
+
"lastModified": 1681028828,
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+
"owner": "nix-systems",
+
"repo": "default",
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-systems",
+
"repo": "default",
+
"type": "github"
+
}
+
},
+
"systems_3": {
+
"locked": {
+
"lastModified": 1681028828,
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+
"owner": "nix-systems",
+
"repo": "default",
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-systems",
+
"repo": "default",
+
"type": "github"
+
}
+
},
+
"systems_4": {
+
"locked": {
+
"lastModified": 1681028828,
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+
"owner": "nix-systems",
+
"repo": "default",
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-systems",
+
"repo": "default",
+
"type": "github"
+
}
+
},
+
"systems_5": {
+
"locked": {
+
"lastModified": 1681028828,
+
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+
"owner": "nix-systems",
+
"repo": "default",
+
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-systems",
+
"repo": "default",
+
"type": "github"
+
}
+
},
+
"utils": {
+
"inputs": {
+
"systems": "systems_4"
+
},
+
"locked": {
+
"lastModified": 1710146030,
+
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
+
"type": "github"
+
},
+
"original": {
+
"owner": "numtide",
+
"repo": "flake-utils",
+
"type": "github"
+
}
+
},
+
"vscode-server": {
+
"inputs": {
+
"flake-utils": "flake-utils_3",
+
"nixpkgs": "nixpkgs_5"
+
},
+
"locked": {
+
"lastModified": 1753541826,
+
"narHash": "sha256-foGgZu8+bCNIGeuDqQ84jNbmKZpd+JvnrL2WlyU4tuU=",
+
"owner": "nix-community",
+
"repo": "nixos-vscode-server",
+
"rev": "6d5f074e4811d143d44169ba4af09b20ddb6937d",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-community",
+
"repo": "nixos-vscode-server",
+
"type": "github"
+
}
+
},
+
"zen-browser": {
+
"inputs": {
+
"home-manager": "home-manager_3",
+
"nixpkgs": [
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1761180075,
+
"narHash": "sha256-V4WLeUQ4gCGZiVihlXWBOZ/1FNcL0jM4zgTY1haJLvY=",
+
"owner": "0xc000022070",
+
"repo": "zen-browser-flake",
+
"rev": "771a2604606905d8c0ffe3b818dc2cc5bd1405d8",
+
"type": "github"
+
},
+
"original": {
+
"owner": "0xc000022070",
+
"repo": "zen-browser-flake",
+
"type": "github"
+
}
+
}
+
},
+
"root": "root",
+
"version": 7
+
}
+1 -1
flake.nix
···
# flake.nix
{
inputs = {
-
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixos-hardware.url = "github:nixos/nixos-hardware/master";
proxmox-nixos.url = "github:SaumonNet/proxmox-nixos";
···
# flake.nix
{
inputs = {
+
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
nixos-hardware.url = "github:nixos/nixos-hardware/master";
proxmox-nixos.url = "github:SaumonNet/proxmox-nixos";
-3
hosts/focalor/default.nix
···
virtualisation.docker = {
enable = true;
enableOnBoot = true;
-
package = pkgs.docker.override {
-
buildGoModule = pkgs.buildGo123Module;
-
};
};
# =============================================================================
···
virtualisation.docker = {
enable = true;
enableOnBoot = true;
};
# =============================================================================
-7
hosts/focalor/vfio.nix
···
package = pkgs.qemu_kvm;
runAsRoot = true;
swtpm.enable = true;
-
ovmf = {
-
enable = true;
-
packages = [(pkgs.OVMF.override {
-
secureBoot = true;
-
tpmSupport = true;
-
}).fd];
-
};
};
hooks.qemu = {
win11 = ./scripts/vm-win11-hook.sh;
···
package = pkgs.qemu_kvm;
runAsRoot = true;
swtpm.enable = true;
};
hooks.qemu = {
win11 = ./scripts/vm-win11-hook.sh;
-3
hosts/valefar/default.nix
···
virtualisation.docker = {
enable = true;
enableOnBoot = true;
-
package = pkgs.docker.override {
-
buildGoModule = pkgs.buildGo123Module;
-
};
};
services.fail2ban = {
···
virtualisation.docker = {
enable = true;
enableOnBoot = true;
};
services.fail2ban = {