my nix flake.

ivy: misc changes + readd virtualhost for pds

vt3e.cat 81a704f4 dc65deb4

verified
+224 -66
+171 -45
flake.lock
··· 7 7 ] 8 8 }, 9 9 "locked": { 10 - "lastModified": 1760084311, 11 - "narHash": "sha256-YpNNtvA8v28Gd3/PHXCABuBWOzR0K8CyQPga13LxBH0=", 10 + "lastModified": 1762452589, 11 + "narHash": "sha256-SZsqazkBxSLsiwup6bj4BcSFNkcP5ficCIa1/H1RKk8=", 12 12 "owner": "catppuccin", 13 13 "repo": "nix", 14 - "rev": "fa3a9d5f80ebfe7f4974bc1939f558690cc56359", 14 + "rev": "f8268123e66838a903136b85e647069005fb0138", 15 15 "type": "github" 16 16 }, 17 17 "original": { ··· 20 20 "type": "github" 21 21 } 22 22 }, 23 + "darwin": { 24 + "inputs": { 25 + "nixpkgs": [ 26 + "agenix", 27 + "nixpkgs" 28 + ] 29 + }, 30 + "locked": { 31 + "lastModified": 1744478979, 32 + "narHash": "sha256-dyN+teG9G82G+m+PX/aSAagkC+vUv0SgUw3XkPhQodQ=", 33 + "owner": "lnl7", 34 + "repo": "nix-darwin", 35 + "rev": "43975d782b418ebf4969e9ccba82466728c2851b", 36 + "type": "github" 37 + }, 38 + "original": { 39 + "owner": "lnl7", 40 + "ref": "master", 41 + "repo": "nix-darwin", 42 + "type": "github" 43 + } 44 + }, 23 45 "flake-parts": { 24 46 "inputs": { 25 47 "nixpkgs-lib": "nixpkgs-lib" 26 48 }, 27 49 "locked": { 28 - "lastModified": 1759362264, 29 - "narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=", 50 + "lastModified": 1762440070, 51 + "narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=", 30 52 "owner": "hercules-ci", 31 53 "repo": "flake-parts", 32 - "rev": "758cf7296bee11f1706a574c77d072b8a7baa881", 54 + "rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8", 33 55 "type": "github" 34 56 }, 35 57 "original": { ··· 40 62 }, 41 63 "flake-utils": { 42 64 "inputs": { 43 - "systems": "systems_2" 65 + "systems": "systems_3" 44 66 }, 45 67 "locked": { 46 68 "lastModified": 1731533236, ··· 48 70 "owner": "numtide", 49 71 "repo": "flake-utils", 50 72 "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", 73 + "type": "github" 74 + }, 75 + "original": { 76 + "owner": "numtide", 77 + "repo": "flake-utils", 78 + "type": "github" 79 + } 80 + }, 81 + "flake-utils_2": { 82 + "inputs": { 83 + "systems": "systems_4" 84 + }, 85 + "locked": { 86 + "lastModified": 1681202837, 87 + "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", 88 + "owner": "numtide", 89 + "repo": "flake-utils", 90 + "rev": "cfacdce06f30d2b68473a46042957675eebb3401", 51 91 "type": "github" 52 92 }, 53 93 "original": { ··· 59 99 "home-manager": { 60 100 "inputs": { 61 101 "nixpkgs": [ 102 + "agenix", 62 103 "nixpkgs" 63 104 ] 64 105 }, 65 106 "locked": { 66 - "lastModified": 1760239230, 67 - "narHash": "sha256-eqSP/BAbQwNTlQ/6yuK0yILzZAPNNj91gp6oIfVtu/E=", 107 + "lastModified": 1745494811, 108 + "narHash": "sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs=", 109 + "owner": "nix-community", 110 + "repo": "home-manager", 111 + "rev": "abfad3d2958c9e6300a883bd443512c55dfeb1be", 112 + "type": "github" 113 + }, 114 + "original": { 115 + "owner": "nix-community", 116 + "repo": "home-manager", 117 + "type": "github" 118 + } 119 + }, 120 + "home-manager_2": { 121 + "inputs": { 122 + "nixpkgs": [ 123 + "nixpkgs" 124 + ] 125 + }, 126 + "locked": { 127 + "lastModified": 1762458864, 128 + "narHash": "sha256-O8NI0pOf1GxPaBRhyspWZmtXLo0tzEEvOfMxNh3/8Jo=", 68 129 "owner": "nix-community", 69 130 "repo": "home-manager", 70 - "rev": "c4aaddeaecc09554c92518fd904e3e84b497ed09", 131 + "rev": "f35d0cb75f0669ac8de18d774b336d3d3560bcde", 71 132 "type": "github" 72 133 }, 73 134 "original": { ··· 88 149 "xwayland-satellite-unstable": "xwayland-satellite-unstable" 89 150 }, 90 151 "locked": { 91 - "lastModified": 1760121522, 92 - "narHash": "sha256-8SGgpcZsMZIqFU+J/1OwebC/px8sgx5YYHNw1XkBM98=", 152 + "lastModified": 1762400608, 153 + "narHash": "sha256-cuT7sRqgERQvvsPgonz+0tu308Yy42nyNxgR2AxllEk=", 93 154 "owner": "sodiboo", 94 155 "repo": "niri-flake", 95 - "rev": "17dbedb88a21142c41d120f139e2870bc56bb5f4", 156 + "rev": "e8402dc4d8104f8f81fd16d3d743d43d106f2f47", 96 157 "type": "github" 97 158 }, 98 159 "original": { ··· 121 182 "niri-unstable": { 122 183 "flake": false, 123 184 "locked": { 124 - "lastModified": 1759395653, 125 - "narHash": "sha256-sv9J1z6CrTPf9lRJLyCN90fZVdQz7LFeX7pIlInH8BQ=", 185 + "lastModified": 1762146685, 186 + "narHash": "sha256-anRlNG6t7esBbF1+ALDeathVBSclA0PEL52Vo0WnN5g=", 126 187 "owner": "YaLTeR", 127 188 "repo": "niri", 128 - "rev": "ba6e5e082a79901dc89b0d49c5da1b769d652aec", 189 + "rev": "a2ca2b3c866bc781b12c334a9f949b3db6d7c943", 129 190 "type": "github" 130 191 }, 131 192 "original": { ··· 136 197 }, 137 198 "nixos-hardware": { 138 199 "locked": { 139 - "lastModified": 1760106635, 140 - "narHash": "sha256-2GoxVaKWTHBxRoeUYSjv0AfSOx4qw5CWSFz2b+VolKU=", 200 + "lastModified": 1762427122, 201 + "narHash": "sha256-sQJuoiqsaIvKiIOmF/3FDV5dM2TGL2jBv1PeQSt83YE=", 141 202 "owner": "NixOS", 142 203 "repo": "nixos-hardware", 143 - "rev": "9ed85f8afebf2b7478f25db0a98d0e782c0ed903", 204 + "rev": "24084931d8098fce300fabea9e48fa96292228d7", 144 205 "type": "github" 145 206 }, 146 207 "original": { ··· 152 213 }, 153 214 "nixpkgs": { 154 215 "locked": { 155 - "lastModified": 1760038930, 156 - "narHash": "sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw=", 216 + "lastModified": 1762111121, 217 + "narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=", 157 218 "owner": "NixOS", 158 219 "repo": "nixpkgs", 159 - "rev": "0b4defa2584313f3b781240b29d61f6f9f7e0df3", 220 + "rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4", 160 221 "type": "github" 161 222 }, 162 223 "original": { ··· 168 229 }, 169 230 "nixpkgs-lib": { 170 231 "locked": { 171 - "lastModified": 1754788789, 172 - "narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=", 232 + "lastModified": 1761765539, 233 + "narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=", 173 234 "owner": "nix-community", 174 235 "repo": "nixpkgs.lib", 175 - "rev": "a73b9c743612e4244d865a2fdee11865283c04e6", 236 + "rev": "719359f4562934ae99f5443f20aa06c2ffff91fc", 176 237 "type": "github" 177 238 }, 178 239 "original": { ··· 183 244 }, 184 245 "nixpkgs-stable": { 185 246 "locked": { 186 - "lastModified": 1759994382, 187 - "narHash": "sha256-wSK+3UkalDZRVHGCRikZ//CyZUJWDJkBDTQX1+G77Ow=", 247 + "lastModified": 1762233356, 248 + "narHash": "sha256-cGS3lLTYusbEP/IJIWGgnkzIl+FA5xDvtiHyjalGr4k=", 188 249 "owner": "NixOS", 189 250 "repo": "nixpkgs", 190 - "rev": "5da4a26309e796daa7ffca72df93dbe53b8164c7", 251 + "rev": "ca534a76c4afb2bdc07b681dbc11b453bab21af8", 191 252 "type": "github" 192 253 }, 193 254 "original": { ··· 199 260 }, 200 261 "nixpkgs_2": { 201 262 "locked": { 202 - "lastModified": 1759036355, 203 - "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=", 204 - "owner": "nixos", 263 + "lastModified": 1762111121, 264 + "narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=", 265 + "owner": "NixOS", 205 266 "repo": "nixpkgs", 206 - "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127", 267 + "rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4", 207 268 "type": "github" 208 269 }, 209 270 "original": { 210 - "owner": "nixos", 271 + "owner": "NixOS", 211 272 "ref": "nixos-unstable", 212 273 "repo": "nixpkgs", 213 274 "type": "github" 214 275 } 215 276 }, 277 + "nixpkgs_3": { 278 + "locked": { 279 + "lastModified": 1682134069, 280 + "narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=", 281 + "owner": "NixOS", 282 + "repo": "nixpkgs", 283 + "rev": "fd901ef4bf93499374c5af385b2943f5801c0833", 284 + "type": "github" 285 + }, 286 + "original": { 287 + "id": "nixpkgs", 288 + "type": "indirect" 289 + } 290 + }, 216 291 "root": { 217 292 "inputs": { 293 + "agenix": "agenix", 218 294 "catppuccin": "catppuccin", 219 295 "flake-parts": "flake-parts", 220 - "home-manager": "home-manager", 296 + "home-manager": "home-manager_2", 221 297 "niri": "niri", 222 298 "nixos-hardware": "nixos-hardware", 223 299 "nixpkgs": "nixpkgs", 224 300 "spicetify-nix": "spicetify-nix", 225 - "vicinae": "vicinae" 301 + "vicinae": "vicinae", 302 + "vscode-server": "vscode-server" 226 303 } 227 304 }, 228 305 "spicetify-nix": { ··· 230 307 "nixpkgs": [ 231 308 "nixpkgs" 232 309 ], 233 - "systems": "systems" 310 + "systems": "systems_2" 234 311 }, 235 312 "locked": { 236 - "lastModified": 1760243311, 237 - "narHash": "sha256-LNrok211+WWlMGWqpGPpnGcnWhyo5SfvMv62uDiLzoI=", 313 + "lastModified": 1762057664, 314 + "narHash": "sha256-mdEEvepIi8ebpGP1WWOHNvNQyd8rF0mUrKAiU6mwHCk=", 238 315 "owner": "Gerg-L", 239 316 "repo": "spicetify-nix", 240 - "rev": "93f1d45e48191a0b24c5c15e5cf369566ff75be9", 317 + "rev": "4aa6e43d29e3c8acf544aa6782a1963a11369208", 241 318 "type": "github" 242 319 }, 243 320 "original": { ··· 276 353 "type": "github" 277 354 } 278 355 }, 356 + "systems_3": { 357 + "locked": { 358 + "lastModified": 1681028828, 359 + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 360 + "owner": "nix-systems", 361 + "repo": "default", 362 + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 363 + "type": "github" 364 + }, 365 + "original": { 366 + "owner": "nix-systems", 367 + "repo": "default", 368 + "type": "github" 369 + } 370 + }, 371 + "systems_4": { 372 + "locked": { 373 + "lastModified": 1681028828, 374 + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 375 + "owner": "nix-systems", 376 + "repo": "default", 377 + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 378 + "type": "github" 379 + }, 380 + "original": { 381 + "owner": "nix-systems", 382 + "repo": "default", 383 + "type": "github" 384 + } 385 + }, 279 386 "vicinae": { 280 387 "inputs": { 281 388 "flake-utils": "flake-utils", 282 389 "nixpkgs": "nixpkgs_2" 283 390 }, 284 391 "locked": { 285 - "lastModified": 1760905782, 286 - "narHash": "sha256-3d9nWWbyL2X17pi85d6uzcBZzKEr3YG1wNo/2bTA2oE=", 392 + "lastModified": 1762438376, 393 + "narHash": "sha256-sO8186XCEKI5WRyvJrJOhkEEvhtluNjY5P/TagvuJ40=", 287 394 "owner": "vicinaehq", 288 395 "repo": "vicinae", 289 - "rev": "8cc6e595c5fc487bf1658bb7be9578f073907ca7", 396 + "rev": "b36b894a991aa752edb766afc78b5aa020fe7071", 290 397 "type": "github" 291 398 }, 292 399 "original": { ··· 295 402 "type": "github" 296 403 } 297 404 }, 405 + "vscode-server": { 406 + "inputs": { 407 + "flake-utils": "flake-utils_2", 408 + "nixpkgs": "nixpkgs_3" 409 + }, 410 + "locked": { 411 + "lastModified": 1753541826, 412 + "narHash": "sha256-foGgZu8+bCNIGeuDqQ84jNbmKZpd+JvnrL2WlyU4tuU=", 413 + "owner": "nix-community", 414 + "repo": "nixos-vscode-server", 415 + "rev": "6d5f074e4811d143d44169ba4af09b20ddb6937d", 416 + "type": "github" 417 + }, 418 + "original": { 419 + "owner": "nix-community", 420 + "repo": "nixos-vscode-server", 421 + "type": "github" 422 + } 423 + }, 298 424 "xwayland-satellite-stable": { 299 425 "flake": false, 300 426 "locked": { ··· 315 441 "xwayland-satellite-unstable": { 316 442 "flake": false, 317 443 "locked": { 318 - "lastModified": 1759707084, 319 - "narHash": "sha256-0pkftKs6/LReNvxw7DVTN2AJEheZVgyeK0Aarbagi70=", 444 + "lastModified": 1762397230, 445 + "narHash": "sha256-PAV8DhLzfo6YwrESrK4ykEj+rUvBYMtbeI0N8SAlsMU=", 320 446 "owner": "Supreeeme", 321 447 "repo": "xwayland-satellite", 322 - "rev": "a9188e70bd748118b4d56a529871b9de5adb9988", 448 + "rev": "56256a1340b771c71a5cfdc881525807edc3fcd2", 323 449 "type": "github" 324 450 }, 325 451 "original": {
+2
flake.nix
··· 31 31 }; 32 32 vicinae.url = "github:vicinaehq/vicinae"; 33 33 34 + vicinae.url = "github:vicinaehq/vicinae"; 35 + vscode-server.url = "github:nix-community/nixos-vscode-server"; 34 36 }; 35 37 36 38 outputs =
+1
hosts/default.nix
··· 42 42 ./ivy 43 43 ./ivy/_hware-config.nix 44 44 inputs.home-manager.nixosModules.home-manager 45 + inputs.vscode-server.nixosModules.default 45 46 ]; 46 47 specialArgs = { 47 48 inherit inputs;
+19 -11
hosts/ivy/caddy.nix
··· 3 3 services.caddy = { 4 4 enable = true; 5 5 email = "hai@wlo.moe"; 6 + virtualHosts = { 7 + "wlo.moe" = { 8 + extraConfig = '' 9 + encode zstd gzip 10 + root * /var/www/wlo.moe 11 + try_files {path} /index.html 12 + file_server 13 + ''; 14 + }; 15 + 16 + # zellij web 17 + # https://zellij.dev/tutorials/web-client/ 18 + "zj.wlo.moe" = { 19 + extraConfig = '' 20 + encode zstd gzip 21 + reverse_proxy localhost:8082 22 + ''; 23 + }; 24 + }; 6 25 7 26 globalConfig = '' 8 27 on_demand_tls { ··· 17 36 file_server 18 37 } 19 38 ''; 20 - 21 - virtualHosts = { 22 - "wlo.moe" = { 23 - extraConfig = '' 24 - encode zstd gzip 25 - root * /var/www/wlo.moe 26 - try_files {path} /index.html 27 - file_server 28 - ''; 29 - }; 30 - }; 31 39 }; 32 40 }
+13
hosts/ivy/default.nix
··· 1 1 { 2 2 pkgs, 3 + inputs, 3 4 ... 4 5 }: 5 6 { ··· 56 57 neofetch 57 58 git 58 59 home-manager 60 + zellij 61 + neovim 62 + curlftpfs 63 + fuse3 59 64 ]; 60 65 66 + services.vscode-server.enable = true; 67 + programs.nix-ld.enable = true; 68 + 61 69 users = { 62 70 mutableUsers = false; 63 71 users."willow" = { ··· 67 75 "wheel" 68 76 "docker" 69 77 ]; 78 + shell = pkgs.fish; 70 79 openssh.authorizedKeys.keys = [ 71 80 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPWD6wk95qNhk/36vEH34qIRp/TPCcQ+D+u5Xd9/N0m1 hai@wlo.moe" 72 81 ]; ··· 79 88 services.openssh = { 80 89 enable = true; 81 90 ports = [ 22 ]; 91 + settings = { 92 + PasswordAuthentication = true; 93 + PermitRootLogin = "no"; 94 + }; 82 95 }; 83 96 }
+5
hosts/ivy/services/ddns.nix
··· 1 + { 2 + services.ddns-updater = { 3 + enable = true; 4 + }; 5 + }
+1
hosts/ivy/services/default.nix
··· 3 3 ./pds.nix 4 4 ./vaultwarden.nix 5 5 ./immich.nix 6 + ./ddns.nix 6 7 ]; 7 8 }
+1 -1
hosts/ivy/services/pds.nix
··· 3 3 enable = true; 4 4 5 5 environmentFiles = [ 6 - "/etc/pds/pds.env" 6 + "/var/lib/secrets/pds" 7 7 ]; 8 8 9 9 settings = {
+11 -9
user/programs/git.nix
··· 6 6 config = { 7 7 programs.git = { 8 8 enable = true; 9 - difftastic.enable = true; 10 9 11 - userName = "willow"; 12 - userEmail = "hai@wlo.moe"; 13 - 14 - signing = { 15 - key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPWD6wk95qNhk/36vEH34qIRp/TPCcQ+D+u5Xd9/N0m1 hai@wlo.moe"; 16 - signByDefault = true; 17 - }; 10 + settings = { 11 + difftastic.enable = true; 12 + user = { 13 + email = "hai@wlo.moe"; 14 + name = "willow"; 15 + }; 18 16 19 - extraConfig = { 20 17 gpg.format = "ssh"; 21 18 gpg.ssh.allowedSignersFile = "~/.ssh/allowed_signers"; 22 19 init.defaultBranch = "main"; 23 20 rebase.autostash = true; 24 21 push.autoSetupRemote = true; 25 22 pull.rebase = true; 23 + }; 24 + 25 + signing = { 26 + key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPWD6wk95qNhk/36vEH34qIRp/TPCcQ+D+u5Xd9/N0m1 hai@wlo.moe"; 27 + signByDefault = true; 26 28 }; 27 29 }; 28 30