From 70c69346fb0abd859e90c8d15945ace560364183 Mon Sep 17 00:00:00 2001 From: sinavir Date: Tue, 8 Oct 2024 12:18:26 +0200 Subject: [PATCH] feat(krz01): init --- keys/machines/krz01.keys | 2 + machines/krz01/_configuration.nix | 26 +++++++ machines/krz01/_hardware-configuration.nix | 50 ++++++++++++ machines/krz01/proxmox.nix | 9 +++ machines/krz01/secrets/secrets.nix | 5 ++ meta/network.nix | 22 ++++++ meta/nodes.nix | 9 +++ modules/dgn-netbox-agent/netbox-agent | Bin 2407 -> 2517 bytes modules/dgn-notify/mail | Bin 2371 -> 2481 bytes modules/dgn-records/__arkheon-token_file | 86 +++++++++++---------- npins/sources.json | 12 +++ 11 files changed, 179 insertions(+), 42 deletions(-) create mode 100644 keys/machines/krz01.keys create mode 100644 machines/krz01/_configuration.nix create mode 100644 machines/krz01/_hardware-configuration.nix create mode 100644 machines/krz01/proxmox.nix create mode 100644 machines/krz01/secrets/secrets.nix diff --git a/keys/machines/krz01.keys b/keys/machines/krz01.keys new file mode 100644 index 0000000..fc5ba52 --- /dev/null +++ b/keys/machines/krz01.keys @@ -0,0 +1,2 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP4o65gWOgNrxbSd3kiQIGZUM+YD6kuZOQtblvzUGsfB root@krz01 + diff --git a/machines/krz01/_configuration.nix b/machines/krz01/_configuration.nix new file mode 100644 index 0000000..3cb2df6 --- /dev/null +++ b/machines/krz01/_configuration.nix @@ -0,0 +1,26 @@ +{ lib, ... }: + +lib.extra.mkConfig { + enabledModules = [ + # INFO: This list needs to stay sorted alphabetically + ]; + + enabledServices = [ + # INFO: This list needs to stay sorted alphabetically + # "proxmox" + ]; + + extraConfig = { + dgn-hardware = { + useZfs = true; + zfsPools = [ + "dpool" + "ppool0" + ]; + }; + + #services.netbird.enable = true; + }; + + root = ./.; +} diff --git a/machines/krz01/_hardware-configuration.nix b/machines/krz01/_hardware-configuration.nix new file mode 100644 index 0000000..6b39e1a --- /dev/null +++ b/machines/krz01/_hardware-configuration.nix @@ -0,0 +1,50 @@ +{ + config, + lib, + modulesPath, + ... +}: + +{ + imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; + + boot = { + initrd = { + availableKernelModules = [ + "ehci_pci" + "ahci" + "mpt3sas" + "usbhid" + "sd_mod" + ]; + kernelModules = [ ]; + }; + kernelModules = [ "kvm-intel" ]; + extraModulePackages = [ ]; + }; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/92bf4d66-2693-4eca-9b26-f86ae09d468d"; + fsType = "ext4"; + }; + + boot.initrd.luks.devices."mainfs" = { + device = "/dev/disk/by-uuid/26f9737b-28aa-4c3f-bd3b-b028283cef88"; + keyFileSize = 1; + keyFile = "/dev/zero"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/280C-8844"; + fsType = "vfat"; + options = [ + "fmask=0022" + "dmask=0022" + ]; + }; + + swapDevices = [ ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/machines/krz01/proxmox.nix b/machines/krz01/proxmox.nix new file mode 100644 index 0000000..47c17b7 --- /dev/null +++ b/machines/krz01/proxmox.nix @@ -0,0 +1,9 @@ +{ sources, ... }: +let + proxmox-nixos = import sources.proxmox-nixos; +in +{ + imports = [ proxmox-nixos.nixosModules.proxmox-ve ]; + services.proxmox-ve.enable = true; + nixpkgs.overlays = [ proxmox-nixos.overlays.x86_64-linux ]; +} diff --git a/machines/krz01/secrets/secrets.nix b/machines/krz01/secrets/secrets.nix new file mode 100644 index 0000000..057ed28 --- /dev/null +++ b/machines/krz01/secrets/secrets.nix @@ -0,0 +1,5 @@ +let + lib = import ../../../lib { }; +in + +lib.setDefault { publicKeys = lib.getNodeKeys "krz01"; } [ ] diff --git a/meta/network.nix b/meta/network.nix index 946b802..ee002df 100644 --- a/meta/network.nix +++ b/meta/network.nix @@ -29,6 +29,28 @@ netbirdIp = "100.80.75.197"; }; + krz01 = { + interfaces = { + eno1 = { + ipv4 = [ + { + address = "129.199.146.21"; + prefixLength = 24; + } + { + address = "192.168.1.145"; + prefixLength = 24; + } + ]; + + gateways = [ "129.199.146.254" ]; + enableDefaultDNS = true; + }; + }; + + hostId = "bd11e8fc"; + }; + geo01 = { interfaces = { eno1 = { diff --git a/meta/nodes.nix b/meta/nodes.nix index 2d7af2c..ce34fbc 100644 --- a/meta/nodes.nix +++ b/meta/nodes.nix @@ -70,6 +70,15 @@ nixpkgs = "24.05"; }; + krz01 = { + site = "pav01"; + + stateVersion = "24.05"; + nixpkgs = "24.05"; + + deployment.targetHost = "192.168.1.145"; + }; + storage01 = { site = "pav01"; stateVersion = "23.11"; diff --git a/modules/dgn-netbox-agent/netbox-agent b/modules/dgn-netbox-agent/netbox-agent index aa49dc0520e4db408603d06c5b228588ff9af201..6e3014b263d15fc3f8d52b07411ac434b4c3bd90 100644 GIT binary patch literal 2517 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 JwVo#?0{|0#5@Y}X diff --git a/modules/dgn-notify/mail b/modules/dgn-notify/mail index 47e86ec1984399b0f6dcd6bd7f344d2a3e68b6b1..a56ae444574201307cacbd521a6b418facec3a61 100644 GIT binary patch literal 2481 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 ssh-ed25519 jIXfPA FhSZKBAccqBqfeayNqY3fhYSi+0NMxsxS3WsdvuVu2M -xT37RUaShiHdPBUnjWntSY43LqXsR8Pgz5kUZ/mgz2w --> ssh-ed25519 QlRB9Q xwok3cJ6SlGxlGi/UesKHVf+O4q9mn7btLweXJzeknI -LrigakDhwhHCHEaJ0eQx6TIke9vYLqXwwaUjusWOvSk --> ssh-ed25519 r+nK/Q DS8/iUfczVGxB/Hl6EkweNAGSM0ZhWqrFy4xn82QNH8 -0Z8KOLZtxh2c0JTeiPbz3ZDF3CYrDs7bmwKjjemTs0o +-> ssh-ed25519 jIXfPA sHMGZvBA3KQ+vgyPRvthm7RrZv+cpA8rVaLMG11tWzc +wb74jb8YFbu4hTaKECNpaCV5besptdBoXXstKd+eLTI +-> ssh-ed25519 QlRB9Q RILFFiLngUvfSPOmw6ZLmFLVyIIQqzib7LTV8hZP/w4 +na6S3iWEs3cxff30X59wD0SUNEP0/9LcuCyCUi7wgxg +-> ssh-ed25519 r+nK/Q Mtrr3NKJG1MBw150IZK1ZTKCglktIK8mV2M7FiLz9EQ +zEEJwKeucMsZePFTZF/Cxfcuqn7KiSoBmBnNVKX1jAY -> ssh-rsa krWCLQ -CDqVAHHD/1keQdgJZX5/hkiYMpZae1MocI5LjtWWg+QDkw1Bp6bNZLou8Uc2RG0H -xZIB+z1XSXf7iMla5l7RWbW+g61T38QKWoAwvAGFz+XOstBTDY4bWgSv1g6vm+6x -XuQLxCkj4cmy3dUsvaiiQXsstuMGOWSUbp2OQWfErzoVegHVCr/XKSAI1vMwQOWN -9tJUJCKEo2DTr5OmIL7kSWguVZYy77ta7JxmGbPrNQ7LJuRoZkUgX4V37SFgDKN4 -QgpupxXP/3oDhDSzZYbS6Fw+b7U01BwPyziY1kOYztv2qSoBJFMVtZS3oJEu4ChU -7MRHaN15cGZRsC5zIQAg9w --> ssh-ed25519 /vwQcQ ZPWBCoQ7imVFfTkUYrp4NGRnz3vskNtMgbV41F1s8BE -oTrgDNisd8Sqmxo0ZDpVSO5iURWNLrIlKABjys+gHhw --> ssh-ed25519 0R97PA CgUUW9m8+M1rpsCPAPyRC8VKvilDKMA8VkDqqDfbpAs -qJ/pa3VLh6650lDN5YPyYtxsDYMiRyTtK1yu+JeF3ww --> ssh-ed25519 JGx7Ng r8OMU9Grvd8yxzzUzeEH4iCPp8NBHVcQKQe13AJOKjE -eYC+/VMsoetiVFTGdlAL3xDDe6WziBYU4Fr6XN/HlJI --> ssh-ed25519 5SY7Kg 4T4xlrNW8yqI23A3GH7dRDyhbUA62ldS2/R7YCsHz0U -ukewT84UtQcAQNNSNogi3WOjoNeA7p50D1JHJ+39lYs --> ssh-ed25519 p/Mg4Q EBlu4oYIa4hX5mGExy2xwyHbnDli9xY7MebUOr+hTzw -TqmNgHL1xxyI+i4h3KgskVsWrlYUnuT5MJWcYj2crps --> ssh-ed25519 DqHxWQ KiCWC6eJOUScSlPNpC2G2FbfD/fQ2b14KHhuw+QKNTI -Un89T6OXiXWTBZqwdXPvyckxcBIhp2wmC4A5723b/5g --> ssh-ed25519 tDqJRg k5YZwwURv21NC/0tt2r3CBuUPDhfO/Y7c3ISVhMGQkA -sdm+SpychoEekD6JK6Wz2CCcfDpwPD6rlLyB3RJES08 --> ssh-ed25519 9pVK7Q 2kUnZCmNsAu90KA+st/ZFnez8rg4zqIZ3AZQsqHW0y8 -YlCXQ5g8vnNboPVHdSKyrdwRNvjwp9VHP+RV2WP7z00 --> ssh-ed25519 /BRpBQ w+kqiukijvXdlvKdTfVvNYv6pLTifaZeagzU1VWQLwE -RKNPvu971viqMHBXpgE9D8L9ievWxIS5ANU8QADqwRY --> ssh-ed25519 +MNHsw m+K/VIApzxBfYxc4/dPod+9TwBBTrtGa/B28QhawAD8 -gwJLtE5zIiNtKZ/YdroneSLLuZzvoAXaJYsqPzPkyLc --> ssh-ed25519 rHotTw NSgFCgFQxKc7DSrNq/77PAnAKxSG055gutF2aUUDLzA -uL3QhQHmtQrrUPllFtVf7QiLIMWkT0EYIokxUVkLMrc --> ssh-ed25519 +mFdtQ otE9brZku3sOSb9IvvTW/eioWDFvMJlsxSUvOcPNwiU -7vV6u7zLv2EfSz3qmY9Sboj2Z5LBwSTxrl4FWm3mYAs --> ssh-ed25519 0IVRbA kwQNIVhpFtgIlJAAoqk1fqUP9OHN9YGWcYXbT+/bHE0 -gDOPJMeDI2eDx+emxUNSb/MW7IRPj8ni3mOLgZV9F0Y --> ssh-ed25519 IY5FSQ gtGe4X/Vx4oWn0IIUwv6qpWZ250slvT/QMdwVQQrsAQ -yeJ8+BibBiwq2944ruZdek/4tpAqyMnG0RsyzkXQpRg ---- QhDkZSHLpgsvAUk5YhkhD8MNNX6Vlj7CWeQfJ6oEmk0 -|`P!+g&i;lNn 4kW#胍w \ No newline at end of file +r3OX+AaSGO0zLoEAvAo3UrtWwU/Vjyfdp+qy4haB3tpl305I6Y6O6n2iHnc1PFgw +qQ7Sa0GekbxNcwD7MzAmKbsm9wmnrF2hX03gFDI5isEPxaLC6ha207Ykauc2q1JC +/SOZ/OUiizBUuO5OjywYz2AJUfEabmd+X1fw5QxAPSfp57KBZDJCGSpEDeJigU7M +1n1XsT6eCyNDIIozRzIIyxLZU+tDDswjvjCaDJ/t2BE76LienwMRZK4P4tSn8DQP +Jbm7bb5T2P1VAK4qIMP04DXQ861Kr2DvpLA/aPtHd9yMcZn5wQWMCVDgsL3ko0fU +VThQwBW4qe59CCxA68TUcQ +-> ssh-ed25519 /vwQcQ KYM+4CPxNwxwh3liBBJYIqlWzpDO3h/dl54rEKQXGHU +uteNJEqwLKUC3Gjm0BiRmb3uLb3bzRfpf3c1Da3vGjY +-> ssh-ed25519 0R97PA Sc9QAI4UNY6x0fZAoQOpUjzFzwev196x+7fjeIry3AU +puUi8W0jCbMW3cN7PjoDM+vXnHjdQ2RLfX0kdpsaWhI +-> ssh-ed25519 JGx7Ng LzO5qvnVWhF3+cR4J3nJv9IB55/FYKillkJ2jKadfQA +r3F+FKdpoKTB0/e5Vz5JFh9u8BKBOjn9XXE4dJEriuw +-> ssh-ed25519 5SY7Kg Uz/EgMgi0ACJStIvz06efUQpeU6VAuXVj+Veki0LkXA +ukCkNIQMYbZBCBfd5R5dKWJwOcIKHzS9HN9CNk5iSF4 +-> ssh-ed25519 p/Mg4Q 9+IsF8fUNcQhRxRddI6WQyKP8Ky0HV4jAUvS0ySDDwM +7WamT/OA2Os6uE/hKzWkfjlwOKQpZ6j+fcgkvsk6wCY +-> ssh-ed25519 DqHxWQ WndaDm+ApRfFj+KL5cJgJqwaZXUYrXHpQ6AxDtGb5FY +u5RHgWaY28QfA3jsD54PLR50Jl5KQyVpPv4CFhLPiYI +-> ssh-ed25519 tDqJRg Wgx7QpoPeendwBsWB+jAN5K+1uhxPsEHMugOPeC+Ono +CRWVWTQB2eCVSKAwIzNNaWefAmniVtF5hu8xYeTGF0Q +-> ssh-ed25519 9pVK7Q kB5gWwwNNcCnjN5+1j7alWzqEgYMDQ3IvA8/0ltfLwo +Tp7n6v/s4swKjOqEDKEKhM8agghKEvaz+zymG+b72f8 +-> ssh-ed25519 /BRpBQ 6B5ODsRsRx8EIOrzBnAAw1bYsAQMvssSC1xxbAh+bGE +Xmhe74XTMwfcGvk620XixhR/6GtOt2fynSMdJ7riZxs +-> ssh-ed25519 /x+F2Q /idVQW3v18G3e++zLmmcpZTvSW6YTfYKYX0xalx3DTU +ybNKGMgW5ChQU2HXHfM0Od6GWC+HRKDemibhzi+NCA4 +-> ssh-ed25519 +MNHsw +5EkjYR0CD0tF3jazvyz6WtzIG+84czuEsGzPmucOVI +AqBXlugxP84nJ9jK1dPWWRJAAAzZjKl0RKd1+aXeIJg +-> ssh-ed25519 rHotTw IzGcfj5jNooeVt7+iJwnxUfka95NVEtE9dStQUt+gCE ++lrjFHAgNOxI4JS6tGXcDSnbdn6/qwt2tI2WdVX2tO4 +-> ssh-ed25519 +mFdtQ AieFjWmv27LvUbZXCBEqmvfTQM7SLXL12qIOzZLxdi8 +s0qzhUO2FDqr/w8B4cbnX8NuXfZM+nv4gj6SF0DreCY +-> ssh-ed25519 0IVRbA +S10pCaLByp+UrfbZXIIhMvUW79NPSSr5qHbm8Q8nxY +fLU4Shu/luX9gLrJDM8rY+HRpHuuLKJAz0BSiLfXkj8 +-> ssh-ed25519 IY5FSQ FJGXPcN7XjZTl3zc8iLSmc2IfhHx/xqIqnNz7j0dXGg +D99jvNKh7yzafKB9qzOX6xNjhf3WS4bYBcc91dVX6Ow +--- USWnD/9XEj6tW0aHMZiVK1Guf43b/8wWcsafnVT0+h4 +RqH,XHs8tAbAGIΤ,ݥ: