Compare commits
3 commits
f01070d207
...
79f73d2dd2
Author | SHA1 | Date | |
---|---|---|---|
Gabriel Simmer | 79f73d2dd2 | ||
Gabriel Simmer | 38fc320fac | ||
Gabriel Simmer | ff2270d78b |
20
dns/dns.nix
20
dns/dns.nix
|
@ -18,12 +18,22 @@
|
||||||
data = "e9195a3e-6f24-4cdb-be6d-237199d9a258.cfargotunnel.com";
|
data = "e9195a3e-6f24-4cdb-be6d-237199d9a258.cfargotunnel.com";
|
||||||
};
|
};
|
||||||
|
|
||||||
"grafana" = {
|
"grafana".aaaa = {
|
||||||
a.data = ["91.107.206.145"];
|
ttl = 0;
|
||||||
aaaa.data = ["2a01:4f8:c012:5ec6::"];
|
data = ["2a01:4f8:c012:5ec6::1"];
|
||||||
|
};
|
||||||
|
"prometheus".cname = {
|
||||||
|
ttl = 0;
|
||||||
|
data = "grafana.gmem.ca";
|
||||||
|
};
|
||||||
|
"uptime".cname = {
|
||||||
|
ttl = 0;
|
||||||
|
data = "grafana.gmem.ca";
|
||||||
|
};
|
||||||
|
"healthchecks".cname = {
|
||||||
|
ttl = 0;
|
||||||
|
data = "grafana.gmem.ca";
|
||||||
};
|
};
|
||||||
"uptime".cname.data = "grafana.gmem.ca";
|
|
||||||
"healthchecks".cname.data = "grafana.gmem.ca";
|
|
||||||
"truenas".a.data = ["192.168.50.229"];
|
"truenas".a.data = ["192.168.50.229"];
|
||||||
"docs" = {
|
"docs" = {
|
||||||
a.data = ["100.116.48.47"];
|
a.data = ["100.116.48.47"];
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
"authentik"
|
"authentik"
|
||||||
"ibiza"
|
"ibiza"
|
||||||
"matrix"
|
"matrix"
|
||||||
"photos"
|
|
||||||
"proxmox"
|
"proxmox"
|
||||||
"pw"
|
"pw"
|
||||||
"tokyo"
|
"tokyo"
|
||||||
|
@ -15,7 +14,13 @@
|
||||||
] (name: {
|
] (name: {
|
||||||
name = name + ".gmem.ca";
|
name = name + ".gmem.ca";
|
||||||
content = "newcluster.gmem.ca";
|
content = "newcluster.gmem.ca";
|
||||||
});
|
}) ++ [ {
|
||||||
|
name = "grafana.gmem.ca";
|
||||||
|
content = "100.126.232.130";
|
||||||
|
} {
|
||||||
|
name = "photos.gmem.ca";
|
||||||
|
content = "100.116.48.47";
|
||||||
|
}];
|
||||||
home =
|
home =
|
||||||
lib.lists.forEach [
|
lib.lists.forEach [
|
||||||
"git"
|
"git"
|
||||||
|
@ -50,7 +55,10 @@
|
||||||
] (name: {
|
] (name: {
|
||||||
name = name + ".gmem.ca";
|
name = name + ".gmem.ca";
|
||||||
content = "homelab.gmem.ca";
|
content = "homelab.gmem.ca";
|
||||||
});
|
}) ++ [ {
|
||||||
|
name = "photos.gmem.ca";
|
||||||
|
content = "192.168.50.229";
|
||||||
|
}];
|
||||||
in {
|
in {
|
||||||
data = {
|
data = {
|
||||||
"bcee89" = home;
|
"bcee89" = home;
|
||||||
|
|
154
flake.lock
154
flake.lock
|
@ -4,20 +4,21 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"darwin": "darwin",
|
"darwin": "darwin",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1695384796,
|
"lastModified": 1718371084,
|
||||||
"narHash": "sha256-TYlE4B0ktPtlJJF9IFxTWrEeq+XKG8Ny0gc2FGEAdj0=",
|
"narHash": "sha256-abpBi61mg0g+lFFU0zY4C6oP6fBwPzbHPKBGw676xsA=",
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "1f677b3e161d3bdbfd08a939e8f25de2568e0ef4",
|
"rev": "3a56735779db467538fb2e577eda28a9daacaca6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "1f677b3e161d3bdbfd08a939e8f25de2568e0ef4",
|
"rev": "3a56735779db467538fb2e577eda28a9daacaca6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -80,11 +81,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673295039,
|
"lastModified": 1700795494,
|
||||||
"narHash": "sha256-AsdYgE8/GPwcelGgrntlijMg4t3hLFJFCRF3tL5WVjA=",
|
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "87b9d090ad39b25b2400029c64825fc2a8868943",
|
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -101,11 +102,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718644238,
|
"lastModified": 1720112930,
|
||||||
"narHash": "sha256-Kjqe0v2n0+ZU74edGZJADysx+n4Ny5QVuqk4xVEblHE=",
|
"narHash": "sha256-pdiJ6QGnBYo8L1ePd32u2DH5/jDijE3YGf1TMebaIcU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "1f57a6596440c15e6135dfbde5f93c2851f01ac9",
|
"rev": "160e167fee1bb84587aa7ba26005e974903490cc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -200,7 +201,7 @@
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
|
@ -218,7 +219,7 @@
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_3"
|
"systems": "systems_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
|
@ -236,7 +237,7 @@
|
||||||
},
|
},
|
||||||
"flake-utils_4": {
|
"flake-utils_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_5"
|
"systems": "systems_6"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
|
@ -290,11 +291,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682203081,
|
"lastModified": 1703113217,
|
||||||
"narHash": "sha256-kRL4ejWDhi0zph/FpebFYhzqlOBrk0Pl3dzGEKSAlEw=",
|
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "32d3e39c491e2f91152c84f8ad8b003420eab0a1",
|
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -310,11 +311,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718526747,
|
"lastModified": 1720045378,
|
||||||
"narHash": "sha256-sKrD/utGvmtQALvuDj4j0CT3AJXP1idOAq2p+27TpeE=",
|
"narHash": "sha256-lmE7B+QXw7lWdBu5GQlUABSpzPk3YBb9VbV+IYK5djk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "0a7ffb28e5df5844d0e8039c9833d7075cdee792",
|
"rev": "0a30138c694ab3b048ac300794c2eb599dc40266",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -327,15 +328,15 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"systems": "systems_2",
|
"systems": "systems_3",
|
||||||
"treefmt": "treefmt"
|
"treefmt": "treefmt"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718110643,
|
"lastModified": 1719313214,
|
||||||
"narHash": "sha256-KrEOCx/bpN++sySOEL5EO5AhYsqRZZk+CXacueUeSl4=",
|
"narHash": "sha256-3CY/B/60A5rikhU5OlgDdNZMsOSIA1MteA2UPm4EHU0=",
|
||||||
"owner": "hall",
|
"owner": "hall",
|
||||||
"repo": "kubenix",
|
"repo": "kubenix",
|
||||||
"rev": "a04066c45526c6d8410ba998134f692ff991b4f3",
|
"rev": "d6ddf1b4e8804e3c9564696a493ac14c0bcb19e2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -350,11 +351,11 @@
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718539824,
|
"lastModified": 1719749459,
|
||||||
"narHash": "sha256-pVGgM3MOOpMMqprkrMkuWwhC1dsw6Xt7aRGaBkMQqG0=",
|
"narHash": "sha256-sAZRJNJ9FRUPvseuH21kmh9s+Q6AfQWPNxKVm534wgk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "lib-aggregate",
|
"repo": "lib-aggregate",
|
||||||
"rev": "17a1c1bfca963a2776969866aaa07744d7ac9135",
|
"rev": "a15b020a1d0fc483386eb001ec6735b8a30bec81",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -392,11 +393,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717647344,
|
"lastModified": 1719353937,
|
||||||
"narHash": "sha256-m8XYt8NU2T4gvkien7H7LFGXHhSA5z4tHOeuXQ3DJi4=",
|
"narHash": "sha256-86NBqDxAP20ET/UoKX0WvSItblNQ97czXb2q7lkMrwk=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "4e25f1ab68f2270f9cff59216056c21073db0164",
|
"rev": "5d9d94089fb1ca96222a34bfe245ef5c5ebefd37",
|
||||||
"revCount": 87,
|
"revCount": 92,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.lix.systems/lix-project/nixos-module"
|
"url": "https://git.lix.systems/lix-project/nixos-module"
|
||||||
},
|
},
|
||||||
|
@ -413,11 +414,11 @@
|
||||||
"treefmt-nix": "treefmt-nix_2"
|
"treefmt-nix": "treefmt-nix_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717698186,
|
"lastModified": 1719247822,
|
||||||
"narHash": "sha256-e3/cvm7bAn0RsTBcPfHwuYOi2lwoO4jpTn4nmMSvHfU=",
|
"narHash": "sha256-qbtex5uSOUQnK4797JztyTQWlnlhEsE8x5g5qs5DgvQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-eval-jobs",
|
"repo": "nix-eval-jobs",
|
||||||
"rev": "b6169e08e76e10b673d1b54f944cddb1e7cbea97",
|
"rev": "9bed665aa71907dcacc8ae6dba1a3055a9ff2de7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -468,11 +469,11 @@
|
||||||
},
|
},
|
||||||
"nixlib": {
|
"nixlib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712450863,
|
"lastModified": 1719708727,
|
||||||
"narHash": "sha256-K6IkdtMtq9xktmYPj0uaYc8NsIqHuaAoRBaMgu9Fvrw=",
|
"narHash": "sha256-XFNKtyirrGNdehpg7lMNm1skEcBApjqGhaHc/OI95HY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "3c62b6a12571c9a7f65ab037173ee153d539905f",
|
"rev": "1bba8a624b3b9d4f68db94fb63aaeb46039ce9e6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -487,7 +488,7 @@
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"systems": "systems_4",
|
"systems": "systems_5",
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -512,11 +513,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718025593,
|
"lastModified": 1720055043,
|
||||||
"narHash": "sha256-WZ1gdKq/9u1Ns/oXuNsDm+W0salonVA0VY1amw8urJ4=",
|
"narHash": "sha256-SKizewU4UeYrkZWPUjur8EoxscGoNb0pGcrNL4YzAIg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixos-generators",
|
"repo": "nixos-generators",
|
||||||
"rev": "35c20ba421dfa5059e20e0ef2343c875372bdcf3",
|
"rev": "168b220231a70e47cc1f0919048fa5914415fb18",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -527,11 +528,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718548414,
|
"lastModified": 1719895800,
|
||||||
"narHash": "sha256-1obyIuQPR/Kq1j5/i/5EuAfQrDwjYnjCDG8iLtXmBhQ=",
|
"narHash": "sha256-xNbjISJTFailxass4LmdWeV4jNhAlmJPwj46a/GxE6M=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "cde8f7e11f036160b0fd6a9e07dc4c8e4061cf06",
|
"rev": "6e253f12b1009053eff5344be5e835f604bb64cd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -543,11 +544,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1677676435,
|
"lastModified": 1703013332,
|
||||||
"narHash": "sha256-6FxdcmQr5JeZqsQvfinIMr0XcTyTuR7EXX0H3ANShpQ=",
|
"narHash": "sha256-+tFNwMvlXLbJZXiMHqYq77z/RfmpfpiI3yjL6o/Zo9M=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a08d6979dd7c82c4cef0dcc6ac45ab16051c1169",
|
"rev": "54aac082a4d9bb5bbc5c4e899603abfb76a3f6d6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -559,11 +560,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718499101,
|
"lastModified": 1719708727,
|
||||||
"narHash": "sha256-2oGRKxl3qEyRH2DJRiVtLeJICcybXMkqjWQYODINL9M=",
|
"narHash": "sha256-XFNKtyirrGNdehpg7lMNm1skEcBApjqGhaHc/OI95HY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "6fba0c5a27b984914794ffdab8d7bb5c29ab11b6",
|
"rev": "1bba8a624b3b9d4f68db94fb63aaeb46039ce9e6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -574,11 +575,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718447546,
|
"lastModified": 1719957072,
|
||||||
"narHash": "sha256-JHuXsrC9pr4kA4n7LuuPfWFJUVlDBVJ1TXDVpHEuUgM=",
|
"narHash": "sha256-gvFhEf5nszouwLAkT9nWsDzocUTqLWHuL++dvNjMp9I=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "842253bf992c3a7157b67600c2857193f126563a",
|
"rev": "7144d6241f02d171d25fba3edeaf15e0f2592105",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -598,11 +599,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718648571,
|
"lastModified": 1720107386,
|
||||||
"narHash": "sha256-B8gba/06zL6xahoOeoTRg4pc9EvDX6sZNhvuiSmhKbE=",
|
"narHash": "sha256-nMIXgK2BPLF70w/c7Jl8Ef5nm44q1su2qR9unl1J9cU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs-wayland",
|
"repo": "nixpkgs-wayland",
|
||||||
"rev": "8b98b818f71327a617f730cd8a7a8e1be41ce66e",
|
"rev": "db2578662c75bad3a16af4322104de5823e1ae6e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -629,11 +630,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718318537,
|
"lastModified": 1720031269,
|
||||||
"narHash": "sha256-4Zu0RYRcAY/VWuu6awwq4opuiD//ahpc2aFHg2CWqFY=",
|
"narHash": "sha256-rwz8NJZV+387rnWpTYcXaRNvzUSnnF9aHONoJIYmiUQ=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e9ee548d90ff586a6471b4ae80ae9cfcbceb3420",
|
"rev": "9f4128e00b0ae8ec65918efeba59db998750ead6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -677,11 +678,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_6": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718428119,
|
"lastModified": 1720058333,
|
||||||
"narHash": "sha256-WdWDpNaq6u1IPtxtYHHWpl5BmabtpmLnMAx0RdJ/vo8=",
|
"narHash": "sha256-gM2RCi5XkxmcsZ44pUkKIYBiBMfZ6u7MdcZcykmccrs=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e6cea36f83499eb4e9cd184c8a8e823296b50ad5",
|
"rev": "6842b061970bf96965d66fcc86a28e1f719aae95",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -693,11 +694,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_7": {
|
"nixpkgs_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715037484,
|
"lastModified": 1719082008,
|
||||||
"narHash": "sha256-OUt8xQFmBU96Hmm4T9tOWTu4oCswCzoVl+pxSq/kiFc=",
|
"narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ad7efee13e0d216bf29992311536fce1d3eefbef",
|
"rev": "9693852a2070b398ee123a329e68f0dab5526681",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -765,11 +766,26 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "systems",
|
"owner": "nix-systems",
|
||||||
"type": "indirect"
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_3": {
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "systems",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
@ -784,7 +800,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_4": {
|
"systems_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
@ -798,7 +814,7 @@
|
||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_5": {
|
"systems_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
description = "Nix flake for my infrastructure";
|
description = "Nix flake for my infrastructure";
|
||||||
inputs = {
|
inputs = {
|
||||||
agenix.url = "github:ryantm/agenix?rev=1f677b3e161d3bdbfd08a939e8f25de2568e0ef4";
|
agenix.url = "github:ryantm/agenix?rev=3a56735779db467538fb2e577eda28a9daacaca6";
|
||||||
terranix.url = "github:terranix/terranix";
|
terranix.url = "github:terranix/terranix";
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||||
nixinate.url = "github:matthewcroughan/nixinate";
|
nixinate.url = "github:matthewcroughan/nixinate";
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
lib,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -35,6 +36,10 @@
|
||||||
file = ../../secrets/paperless-oauth.age;
|
file = ../../secrets/paperless-oauth.age;
|
||||||
owner = "paperless";
|
owner = "paperless";
|
||||||
};
|
};
|
||||||
|
age.secrets.photoprism-password = {
|
||||||
|
file = ../../secrets/photoprism.age;
|
||||||
|
owner = "photoprism";
|
||||||
|
};
|
||||||
nix = {
|
nix = {
|
||||||
settings = {
|
settings = {
|
||||||
auto-optimise-store = true;
|
auto-optimise-store = true;
|
||||||
|
@ -49,6 +54,7 @@
|
||||||
};
|
};
|
||||||
supportedFilesystems = ["zfs" "ntfs"];
|
supportedFilesystems = ["zfs" "ntfs"];
|
||||||
kernelModules = ["coretemp" "kvm-amd" "it87"];
|
kernelModules = ["coretemp" "kvm-amd" "it87"];
|
||||||
|
binfmt.emulatedSystems = ["aarch64-linux"];
|
||||||
zfs.extraPools = ["tank"];
|
zfs.extraPools = ["tank"];
|
||||||
};
|
};
|
||||||
systemd.services.paperless-web.serviceConfig.EnvironmentFile = config.age.secrets.paperless-oauth.path;
|
systemd.services.paperless-web.serviceConfig.EnvironmentFile = config.age.secrets.paperless-oauth.path;
|
||||||
|
@ -293,7 +299,7 @@
|
||||||
plex = {
|
plex = {
|
||||||
enable = true;
|
enable = true;
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
accelerationDevices = [ "/dev/dri/renderD128" ];
|
accelerationDevices = [ "*" ];
|
||||||
};
|
};
|
||||||
nginx = {
|
nginx = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -350,6 +356,23 @@
|
||||||
proxyPass = "http://127.0.0.1:${toString config.services.paperless.port}/";
|
proxyPass = "http://127.0.0.1:${toString config.services.paperless.port}/";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
virtualHosts."photos.gmem.ca" = {
|
||||||
|
enableACME = true;
|
||||||
|
addSSL = true;
|
||||||
|
acmeRoot = null;
|
||||||
|
locations."/" = {
|
||||||
|
proxyWebsockets = true;
|
||||||
|
extraConfig = ''
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
|
||||||
|
client_max_body_size 10g;
|
||||||
|
'';
|
||||||
|
proxyPass = "http://127.0.0.1:${toString config.services.photoprism.port}/";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
forgejo = {
|
forgejo = {
|
||||||
|
@ -448,8 +471,24 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
photoprism = {
|
||||||
|
enable = true;
|
||||||
|
originalsPath = "/tank/photos";
|
||||||
|
passwordFile = config.age.secrets.photoprism-password.path;
|
||||||
|
settings = {
|
||||||
|
PHOTOPRISM_ADMIN_USER = "arch";
|
||||||
|
PHOTOPRISM_ORIGINALS_LIMIT = "-1";
|
||||||
|
PHOTOPRISM_FFMPEG_ENCODER = "nvidia";
|
||||||
|
PHOTOPRISM_SITE_URL = "https://photos.gmem.ca/";
|
||||||
|
PHOTOPRISM_SITE_CAPTION = "Vancouver Photo Repository";
|
||||||
|
PHOTOPRISM_UPLOAD_NSFW = "true";
|
||||||
|
PHOTOPRISM_BACKUP_PATH = "/tank/photos/backups";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.photoprism.serviceConfig.PrivateDevices = lib.mkForce false;
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
hostId = "e1e29bf4";
|
hostId = "e1e29bf4";
|
||||||
hostName = "vancouver";
|
hostName = "vancouver";
|
||||||
|
@ -458,8 +497,8 @@
|
||||||
trustedInterfaces = ["tailscale0"];
|
trustedInterfaces = ["tailscale0"];
|
||||||
checkReversePath = "loose";
|
checkReversePath = "loose";
|
||||||
enable = true;
|
enable = true;
|
||||||
allowedTCPPorts = [22 80 443 9798 2049 4328];
|
allowedTCPPorts = [22 80 53 443 9798 2049 4328];
|
||||||
allowedUDPPorts = [41641];
|
allowedUDPPorts = [53 41641];
|
||||||
interfaces."podman*".allowedUDPPorts = [53 5353];
|
interfaces."podman*".allowedUDPPorts = [53 5353];
|
||||||
};
|
};
|
||||||
nftables.enable = true;
|
nftables.enable = true;
|
||||||
|
@ -485,7 +524,7 @@
|
||||||
time.timeZone = "Europe/London";
|
time.timeZone = "Europe/London";
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
hardware = {
|
hardware = {
|
||||||
opengl.enable = true;
|
graphics.enable = true;
|
||||||
nvidia.modesetting.enable = true;
|
nvidia.modesetting.enable = true;
|
||||||
pulseaudio.enable = false;
|
pulseaudio.enable = false;
|
||||||
};
|
};
|
||||||
|
@ -560,6 +599,7 @@
|
||||||
speedtest = {
|
speedtest = {
|
||||||
image = "ghcr.io/miguelndecarvalho/speedtest-exporter";
|
image = "ghcr.io/miguelndecarvalho/speedtest-exporter";
|
||||||
ports = ["9798:9798"];
|
ports = ["9798:9798"];
|
||||||
|
extraOptions = ["--network=podman1"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -583,6 +623,11 @@
|
||||||
dnsProvider = "cloudflare";
|
dnsProvider = "cloudflare";
|
||||||
credentialsFile = config.age.secrets.cloudflare-dns.path;
|
credentialsFile = config.age.secrets.cloudflare-dns.path;
|
||||||
};
|
};
|
||||||
|
security.acme.certs."photos.gmem.ca" = {
|
||||||
|
domain = "photos.gmem.ca";
|
||||||
|
dnsProvider = "cloudflare";
|
||||||
|
credentialsFile = config.age.secrets.cloudflare-dns.path;
|
||||||
|
};
|
||||||
|
|
||||||
system.stateVersion = "23.05";
|
system.stateVersion = "23.05";
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,7 @@ in {
|
||||||
"secrets/k3s-token.age".publicKeys = k3s ++ users;
|
"secrets/k3s-token.age".publicKeys = k3s ++ users;
|
||||||
|
|
||||||
"secrets/paperless-oauth.age".publicKeys = [vancouver] ++ users;
|
"secrets/paperless-oauth.age".publicKeys = [vancouver] ++ users;
|
||||||
|
"secrets/photoprism.age".publicKeys = [vancouver] ++ users;
|
||||||
|
|
||||||
"secrets/dnsmasq-nextdns-profile.age".publicKeys = dnsmasq ++ users;
|
"secrets/dnsmasq-nextdns-profile.age".publicKeys = dnsmasq ++ users;
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
age-encryption.org/v1
|
age-encryption.org/v1
|
||||||
-> ssh-ed25519 J+a91w 5qM0+swhJBQ6lOJgqlAMbTBv/tXh37Yw9RehWjfMl1U
|
-> ssh-ed25519 J+a91w bqsD0ETI4w0V5IQnIMra2i02XeYDKI/Y0GE6WTMygns
|
||||||
cVeB/LeQLhGpI5SFIbHlQgfSTrDEqOYrZrMJfv3gzrk
|
Wzid1TKoS1GiO//Ao+K+7L1Nwy6mw8qJS07YUVVcgBU
|
||||||
-> ssh-ed25519 qbziOw VyqqCFrUDyAVpFcK1JYBS3Ub0qZbFs+3+rzHK8SJpWc
|
-> ssh-ed25519 qbziOw lnforSRaNOgreLWHov5aAMvcIngxSMYBVo8Y49QWUnk
|
||||||
vJL/6UqSKe3er38Nh8nwr5bivSKNjaGxX7olrt3drQg
|
YbT+cJUhjjBz3yydLhuwNTHbSPhU1n3FjKXTlqsUWzg
|
||||||
-> A-grease
|
--- LIkk5fedyU2SaK6lbaarQe5yRoAEHFEGKTOq9ZNsZK8
|
||||||
K2EPNwubYzHpNbMdpbUW5QAnM5F8oWWwOeWF3fqdBZhUAOs8gqBbPxmajenpm2Xo
|
I¾ó1,<ã-e°cYŸq\±q&g/
|
||||||
Cxym
|
D®Ò†rtf)á.¸qîÁ?À”˜¬Ç>Æ2«ãzæ@×G<07>L5R¢Ï\¥
|
||||||
--- c78sbNV3usgVr+zkTg9FEeJ8c5S3Ms2w4BESVHk5xw8
|
|
||||||
@½UÊ ®Fq^]½é²Œ€>ÙP!Ô옯XtË8·Á¬$A·qÊrypÉ/’Uª— (R
©Q«
|
|
Binary file not shown.
7
secrets/monitoring-telegram.age
Normal file
7
secrets/monitoring-telegram.age
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 J+a91w bs0SNyubX1M5vT+2V2C53IhwYNz6yxH8ibQWKgo09jY
|
||||||
|
Vm2veIq0H77eA+phQjS0BTNJdpZdrPLCx46GNokwIdE
|
||||||
|
-> ssh-ed25519 qbziOw 7cLIgYgkMKsJuSiD78rjk/0CDEwZ+hmzSkPSTMJ5FSk
|
||||||
|
9lSOtKMk+BoffFkpURHJH3333vAhfdi55AG0om+999Y
|
||||||
|
--- c0RgKKmNT41byLbWBp9SaOAw8qvPyMafsIRRO09fjIQ
|
||||||
|
þ…õ\¼ NNå0.9Œ0Ó±Sé¡åBËpçN>M,Y)KÛfsŠ™}ŸA¾šÓ(nŠYÔžGý¯¥·l$T[_u‘Ç&mBA9ã™GXšÏ
|
8
secrets/photoprism.age
Normal file
8
secrets/photoprism.age
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 oN6OTQ 46dF+kNhsCiwICKF97vSryr7Tk+9wVD6cRyzBh8BNno
|
||||||
|
l5FaHF5Pa3XNivuW9qcQbz4wCoifpadEHZfqvPGHpuM
|
||||||
|
-> ssh-ed25519 qbziOw tfS7EjTMrr/y+Fj5/xukA7/Pe+fIKDwVX7afAy7UdHA
|
||||||
|
H6VHSJQSLVz5rGNeT8JbhyD000LPw9Z128+GQMgypCM
|
||||||
|
--- FmlCaLbWl4ns164Tzu0WcCdFe/OXbsO9yLo8GSdBtNo
|
||||||
|
sPÌ¥&ÎZ
|
||||||
|
¦—â0Ì.R«Xü· u°‚p‡ü;:PðTjéÂfP9‹e€G"ÓòÎÇK6õjo=5ŸCeK>.R6®
|
Loading…
Reference in a new issue