lockfile update and hetzner radicale server.
Hetzner server will eventually have other things on it.
This commit is contained in:
parent
1d6c5082b4
commit
511b8332ed
23
configs/nixos/nginx.nix
Normal file
23
configs/nixos/nginx.nix
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
recommendedTlsSettings = true;
|
||||||
|
commonHttpConfig = ''
|
||||||
|
add_header X-Clacks-Overhead "GNU Terry Pratchett";
|
||||||
|
add_header X-Clacks-Overhead "GNU Bram Moolenaar";
|
||||||
|
'';
|
||||||
|
# other Nginx options
|
||||||
|
};
|
||||||
|
security.acme = {
|
||||||
|
acceptTerms = true;
|
||||||
|
defaults.email = "gabevenberg@gmail.com";
|
||||||
|
};
|
||||||
|
networking.firewall.allowedTCPPorts = [443 80];
|
||||||
|
}
|
|
@ -18,4 +18,5 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
networking.firewall.allowedTCPPorts = [5232];
|
||||||
}
|
}
|
||||||
|
|
136
flake.lock
136
flake.lock
|
@ -28,18 +28,22 @@
|
||||||
},
|
},
|
||||||
"devshell": {
|
"devshell": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": [
|
||||||
|
"nixvim",
|
||||||
|
"nuschtosSearch",
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717408969,
|
"lastModified": 1721902368,
|
||||||
"narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=",
|
"narHash": "sha256-noQ5SghRPe0jzQEbFQb3fYbV6LZEzr7lIRQoxlU7fyI=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "devshell",
|
"repo": "devshell",
|
||||||
"rev": "1ebbe68d57457c8cae98145410b164b5477761f4",
|
"rev": "cf8c7405479cfde7ea4dc815e195391d2328df10",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -55,11 +59,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718242063,
|
"lastModified": 1722028105,
|
||||||
"narHash": "sha256-n3AWItJ4a94GT0cray/eUV7tt3mulQ52L+lWJN9d1E8=",
|
"narHash": "sha256-0ButnGQ1bCMIDblzC6NBSL71Wi6JmHGweI3scoV8CgM=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "832a9f2c81ff3485404bd63952eadc17bf7ccef2",
|
"rev": "5b01cea8b5753de9c2febd27203c530be14745ff",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -83,22 +87,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1696426674,
|
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
|
@ -107,11 +95,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717285511,
|
"lastModified": 1719994518,
|
||||||
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
|
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
|
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -143,11 +131,11 @@
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1701680307,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -158,7 +146,10 @@
|
||||||
},
|
},
|
||||||
"git-hooks": {
|
"git-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": [
|
||||||
|
"nixvim",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
"gitignore": "gitignore",
|
"gitignore": "gitignore",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
|
@ -170,11 +161,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717664902,
|
"lastModified": 1721042469,
|
||||||
"narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=",
|
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1",
|
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -212,11 +203,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718243258,
|
"lastModified": 1722067813,
|
||||||
"narHash": "sha256-abBpj2VU8p6qlRzTU8o22q68MmOaZ4v8zZ4UlYl5YRU=",
|
"narHash": "sha256-nxpzoKXwn+8RsxpxwD86mtEscOMw64ZD/vGSNWzGMlA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "8d5e27b4807d25308dfe369d5a923d87e7dbfda3",
|
"rev": "975b83ca560d17db51a66cb2b0dc0e44213eab27",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -233,11 +224,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717976995,
|
"lastModified": 1721719500,
|
||||||
"narHash": "sha256-u3HBinyIyUvL1+N816bODpJmSQdgn0Mbb8BprFw7kqo=",
|
"narHash": "sha256-nnkqjv4Y37Hydjh6HE9wW4kSkV5Q7q4iIXlL5lwUFOw=",
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "315aa649ba307704db0b16c92f097a08a65ec955",
|
"rev": "884f3fe6d9bf056ba0017c132c39c1f0d07d4fec",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -265,11 +256,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1721413321,
|
"lastModified": 1722017959,
|
||||||
"narHash": "sha256-0GdiQScDceUrVGbxYpV819LHesK3szHOhJ09e6sgES4=",
|
"narHash": "sha256-vkv3MtjRtJdqeWMLH874ngbC6/5wUYzsdw0pb96ZLRc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "ab165a8a6cd12781d76fe9cbccb9e975d0fb634f",
|
"rev": "0b4d40f95a68ef0a6785f6b938ac8c1383321dbf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -292,11 +283,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717976391,
|
"lastModified": 1722012218,
|
||||||
"narHash": "sha256-STKlWaiiFKDybexvQCg5U1+DSLRaxT93NwVaiBSEvTI=",
|
"narHash": "sha256-Rnjo49C5/slnmcQW9c57IdiHJZ3YEFmUn3as/NIPD4E=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NixOS-WSL",
|
"repo": "NixOS-WSL",
|
||||||
"rev": "e3f215e518d52f6f2e68cf713cefe773284e1aa6",
|
"rev": "ac026940beb42f74c5666f6ed3989aca41eddeea",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -308,11 +299,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718160348,
|
"lastModified": 1721924956,
|
||||||
"narHash": "sha256-9YrUjdztqi4Gz8n3mBuqvCkMo4ojrA6nASwyIKWMpus=",
|
"narHash": "sha256-Sb1jlyRO+N8jBXEX9Pg9Z1Qb8Bw9QyOgLDNMEpmjZ2M=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "57d6973abba7ea108bac64ae7629e7431e0199b6",
|
"rev": "5ad6a14c6bf098e98800b091668718c336effc95",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -324,16 +315,16 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717880976,
|
"lastModified": 1721524707,
|
||||||
"narHash": "sha256-BRvSCsKtDUr83NEtbGfHLUOdDK0Cgbezj2PtcHnz+sQ=",
|
"narHash": "sha256-5NctRsoE54N86nWd0psae70YSLfrOek3Kv1e8KoXe/0=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4913a7c3d8b8d00cb9476a6bd730ff57777f740c",
|
"rev": "556533a23879fc7e5f98dd2e0b31a6911a213171",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "release-23.11",
|
"ref": "release-24.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -353,14 +344,15 @@
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
|
"nuschtosSearch": "nuschtosSearch",
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718290136,
|
"lastModified": 1722016645,
|
||||||
"narHash": "sha256-BQFspZqwA56LOIQ0ypw54Nal/BLFUpnZTqoXxeiSTNE=",
|
"narHash": "sha256-YQA4oenJwjWVzX+we6Zzv08im5q2n7dVhJ12Nw8wQio=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "80c03843e7ad7fc7deb0dce6d1f6fc45593ed91d",
|
"rev": "162ae6354bbf2af5c33b09aa90e9d8d11f14462e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -369,6 +361,28 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nuschtosSearch": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1721548975,
|
||||||
|
"narHash": "sha256-agCbztdk1f7nCUz03R6xdbivuBRuqubP2RHW+MNuRTg=",
|
||||||
|
"owner": "NuschtOS",
|
||||||
|
"repo": "search",
|
||||||
|
"rev": "551b031e2bc0bcc9584347a8da6312e57169661d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NuschtOS",
|
||||||
|
"repo": "search",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"deploy-rs": "deploy-rs",
|
"deploy-rs": "deploy-rs",
|
||||||
|
@ -392,11 +406,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718137936,
|
"lastModified": 1721688883,
|
||||||
"narHash": "sha256-psA+1Q5fPaK6yI3vzlLINNtb6EeXj111zQWnZYyJS9c=",
|
"narHash": "sha256-9jsjsRKtJRqNSTXKj9zuDFRf2PGix30nMx9VKyPgD2U=",
|
||||||
"owner": "mic92",
|
"owner": "mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "c279dec105dd53df13a5e57525da97905cc0f0d6",
|
"rev": "aff2f88277dabe695de4773682842c34a0b7fd54",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -443,11 +457,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718139168,
|
"lastModified": 1721769617,
|
||||||
"narHash": "sha256-1TZQcdETNdJMcfwwoshVeCjwWfrPtkSQ8y8wFX3it7k=",
|
"narHash": "sha256-6Pqa0bi5nV74IZcENKYRToRNM5obo1EQ+3ihtunJ014=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "1cb529bffa880746a1d0ec4e0f5076876af931f1",
|
"rev": "8db8970be1fb8be9c845af7ebec53b699fe7e009",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
11
flake.nix
11
flake.nix
|
@ -94,6 +94,7 @@
|
||||||
workstation-vm = import ./hosts/workstation-vm {inherit inputs configLib;};
|
workstation-vm = import ./hosts/workstation-vm {inherit inputs configLib;};
|
||||||
gv-wsl = import ./hosts/wsl-workstation.nix {inherit inputs configLib;};
|
gv-wsl = import ./hosts/wsl-workstation.nix {inherit inputs configLib;};
|
||||||
rockhole = import ./hosts/rockhole64 {inherit inputs configLib;};
|
rockhole = import ./hosts/rockhole64 {inherit inputs configLib;};
|
||||||
|
hetzner-multi = import ./hosts/hetzner-multi {inherit inputs configLib;};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Standalone home-manager configuration entrypoint
|
# Standalone home-manager configuration entrypoint
|
||||||
|
@ -107,15 +108,21 @@
|
||||||
|
|
||||||
deploy = {
|
deploy = {
|
||||||
nodes = {
|
nodes = {
|
||||||
rockpro = {
|
rockhole = {
|
||||||
hostname = "rockpro";
|
hostname = "rockpro";
|
||||||
profiles.system.path = deploy-rs.lib.aarch64-linux.activate.nixos self.nixosConfigurations.rockpro;
|
profiles.system.path = deploy-rs.lib.aarch64-linux.activate.nixos self.nixosConfigurations.rockhole;
|
||||||
remoteBuild = true;
|
remoteBuild = true;
|
||||||
};
|
};
|
||||||
|
hetzner-multi = {
|
||||||
|
hostname = "cal.venberg.xyz";
|
||||||
|
profiles.system.path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.hetzner-multi;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
sshUser = "root";
|
sshUser = "root";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib;
|
||||||
|
|
||||||
packages.x86_64-linux = {
|
packages.x86_64-linux = {
|
||||||
proxmox = import ./packages/proxmox.nix {inherit inputs configLib;};
|
proxmox = import ./packages/proxmox.nix {inherit inputs configLib;};
|
||||||
iso = import ./packages/iso.nix {inherit inputs configLib;};
|
iso = import ./packages/iso.nix {inherit inputs configLib;};
|
||||||
|
|
87
hosts/hetzner-multi/default.nix
Normal file
87
hosts/hetzner-multi/default.nix
Normal file
|
@ -0,0 +1,87 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
configLib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
inputs.nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = {inherit inputs configLib;};
|
||||||
|
# > Our main nixos configuration file <
|
||||||
|
modules = [
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
inputs.disko.nixosModules.disko
|
||||||
|
./disk-config.nix
|
||||||
|
./nginx.nix
|
||||||
|
../../roles/nixos/vm.nix
|
||||||
|
../../configs/nixos/common.nix
|
||||||
|
../../configs/nixos/tailscale.nix
|
||||||
|
../../configs/nixos/sshd.nix
|
||||||
|
../../configs/nixos/secrets.nix
|
||||||
|
../../configs/nixos/radicale.nix
|
||||||
|
({
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
configLib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
host = {
|
||||||
|
user = "gabe";
|
||||||
|
fullName = "Gabe Venberg";
|
||||||
|
gui.enable = false;
|
||||||
|
isVm = true;
|
||||||
|
};
|
||||||
|
networking.hostName = "hetzner-multi"; # Define your hostname.
|
||||||
|
networking.hostId = "908b80b6";
|
||||||
|
networking.useNetworkd = true;
|
||||||
|
systemd.network = {
|
||||||
|
enable = true;
|
||||||
|
networks."enp1s0" = {
|
||||||
|
networkConfig.DHCP = "ipv4";
|
||||||
|
gateway = ["fe80::1"];
|
||||||
|
address = ["2a01:4f8:1c1b:6c7c::1/64"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.${config.host.user} = {
|
||||||
|
inputs,
|
||||||
|
osConfig,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
host = osConfig.host;
|
||||||
|
user = {
|
||||||
|
git = {
|
||||||
|
profile = {
|
||||||
|
name = config.host.fullName;
|
||||||
|
email = "gabevenberg@gmail.com";
|
||||||
|
};
|
||||||
|
workProfile.enable = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
imports = [
|
||||||
|
../../roles/home-manager/minimal-terminal.nix
|
||||||
|
../../configs/home-manager/common.nix
|
||||||
|
inputs.nixvim.homeManagerModules.nixvim
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Bootloader.
|
||||||
|
# boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.initrd.availableKernelModules = ["ahci" "xhci_pci" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"];
|
||||||
|
|
||||||
|
# Open ports in the firewall.
|
||||||
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
|
# Or disable the firewall altogether.
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# This value determines the NixOS release from which the default
|
||||||
|
# settings for stateful data, like file locations and database versions
|
||||||
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
# this value at the release version of the first install of this system.
|
||||||
|
# Before changing this value read the documentation for this option
|
||||||
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
|
system.stateVersion = "24.05"; # Did you read the comment?
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}
|
38
hosts/hetzner-multi/disk-config.nix
Normal file
38
hosts/hetzner-multi/disk-config.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
disko.devices = {
|
||||||
|
disk = {
|
||||||
|
main = {
|
||||||
|
type = "disk";
|
||||||
|
device = "/dev/sda";
|
||||||
|
content = {
|
||||||
|
type = "gpt";
|
||||||
|
partitions = {
|
||||||
|
boot = {
|
||||||
|
size = "1M";
|
||||||
|
type = "EF02";
|
||||||
|
priority = 1;
|
||||||
|
};
|
||||||
|
ESP = {
|
||||||
|
size = "512M";
|
||||||
|
type = "EF00";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "vfat";
|
||||||
|
mountpoint = "/boot";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
root = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "ext4";
|
||||||
|
mountpoint = "/";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
19
hosts/hetzner-multi/nginx.nix
Normal file
19
hosts/hetzner-multi/nginx.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
../../configs/nixos/nginx.nix
|
||||||
|
];
|
||||||
|
services.nginx.virtualHosts."cal.venberg.xyz" = {
|
||||||
|
enableACME = true;
|
||||||
|
forceSSL = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://localhost:5232";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
networking.firewall.allowedTCPPorts = [443 80];
|
||||||
|
}
|
|
@ -98,7 +98,7 @@ inputs.nixpkgs.lib.nixosSystem {
|
||||||
# this value at the release version of the first install of this system.
|
# this value at the release version of the first install of this system.
|
||||||
# Before changing this value read the documentation for this option
|
# Before changing this value read the documentation for this option
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
system.stateVersion = "24.11"; # Did you read the comment?
|
system.stateVersion = "24.05"; # Did you read the comment?
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,10 +11,11 @@
|
||||||
{
|
{
|
||||||
user.nvim.enable-completions = true;
|
user.nvim.enable-completions = true;
|
||||||
programs.nixvim = {
|
programs.nixvim = {
|
||||||
|
opts.foldmethod = "expr";
|
||||||
plugins.treesitter = {
|
plugins.treesitter = {
|
||||||
enable = true;
|
enable = true;
|
||||||
folding = true;
|
folding = true;
|
||||||
indent = true;
|
settings.indent.enable = true;
|
||||||
nixvimInjections = true;
|
nixvimInjections = true;
|
||||||
};
|
};
|
||||||
plugins.treesitter-context.enable = true;
|
plugins.treesitter-context.enable = true;
|
||||||
|
|
|
@ -32,9 +32,9 @@
|
||||||
|
|
||||||
# Add the nu injections
|
# Add the nu injections
|
||||||
extraFiles = {
|
extraFiles = {
|
||||||
"/queries/nu/highlights.scm" = builtins.readFile "${nu-grammar}/queries/nu/highlights.scm";
|
"/queries/nu/highlights.scm".source = "${nu-grammar}/queries/nu/highlights.scm";
|
||||||
"/queries/nu/injections.scm" = builtins.readFile "${nu-grammar}/queries/nu/injections.scm";
|
"/queries/nu/injections.scm".source = "${nu-grammar}/queries/nu/injections.scm";
|
||||||
"/queries/nu/indents.scm" = builtins.readFile "${nu-grammar}/queries/nu/indents.scm";
|
"/queries/nu/indents.scm".source = "${nu-grammar}/queries/nu/indents.scm";
|
||||||
};
|
};
|
||||||
|
|
||||||
plugins = {
|
plugins = {
|
||||||
|
|
|
@ -12,6 +12,15 @@
|
||||||
};
|
};
|
||||||
plugins.which-key = {
|
plugins.which-key = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
# TODO: remvoe this once https://github.com/nix-community/nixvim/issues/1901 is fixed.
|
||||||
|
package = pkgs.vimPlugins.which-key-nvim.overrideAttrs (oldAttrs: {
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = oldAttrs.src.owner;
|
||||||
|
repo = oldAttrs.src.repo;
|
||||||
|
rev = "0539da005b98b02cf730c1d9da82b8e8edb1c2d2"; # v2.1.0
|
||||||
|
hash = "sha256-gc/WJJ1s4s+hh8Mx8MTDg8pGGNOXxgKqBMwudJtpO4Y=";
|
||||||
|
};
|
||||||
|
});
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue