@jaspermayone.com's dotfiles
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

updates

+95 -23
+33 -12
flake.lock
··· 102 102 "type": "github" 103 103 } 104 104 }, 105 + "disko": { 106 + "inputs": { 107 + "nixpkgs": [ 108 + "nixpkgs" 109 + ] 110 + }, 111 + "locked": { 112 + "lastModified": 1766150702, 113 + "narHash": "sha256-P0kM+5o+DKnB6raXgFEk3azw8Wqg5FL6wyl9jD+G5a4=", 114 + "owner": "nix-community", 115 + "repo": "disko", 116 + "rev": "916506443ecd0d0b4a0f4cf9d40a3c22ce39b378", 117 + "type": "github" 118 + }, 119 + "original": { 120 + "owner": "nix-community", 121 + "repo": "disko", 122 + "type": "github" 123 + } 124 + }, 105 125 "flake-compat": { 106 126 "flake": false, 107 127 "locked": { ··· 404 424 }, 405 425 "nixpkgs": { 406 426 "locked": { 407 - "lastModified": 1766399428, 408 - "narHash": "sha256-vS6LSOMDOB3s+L6tqw9IGujxnmUAZQnEG+Vi640LayI=", 427 + "lastModified": 1754028485, 428 + "narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=", 409 429 "owner": "NixOS", 410 430 "repo": "nixpkgs", 411 - "rev": "a6c3a6141ec1b367c58ead3f7f846c772a25f4e5", 431 + "rev": "59e69648d345d6e8fef86158c555730fa12af9de", 412 432 "type": "github" 413 433 }, 414 434 "original": { ··· 420 440 }, 421 441 "nixpkgs-unstable": { 422 442 "locked": { 423 - "lastModified": 1766309749, 424 - "narHash": "sha256-3xY8CZ4rSnQ0NqGhMKAy5vgC+2IVK0NoVEzDoOh4DA4=", 443 + "lastModified": 1766651565, 444 + "narHash": "sha256-QEhk0eXgyIqTpJ/ehZKg9IKS7EtlWxF3N7DXy42zPfU=", 425 445 "owner": "nixos", 426 446 "repo": "nixpkgs", 427 - "rev": "a6531044f6d0bef691ea18d4d4ce44d0daa6e816", 447 + "rev": "3e2499d5539c16d0d173ba53552a4ff8547f4539", 428 448 "type": "github" 429 449 }, 430 450 "original": { ··· 436 456 }, 437 457 "nixpkgs_2": { 438 458 "locked": { 439 - "lastModified": 1766473571, 440 - "narHash": "sha256-5G1NDO2PulBx1RoaA6U1YoUDX0qZslpPxv+n5GX6Qto=", 459 + "lastModified": 1766622938, 460 + "narHash": "sha256-Eovt/DOCYjFFBZuYbbG9j5jhklzxdNbUGVYYxh3lG3s=", 441 461 "owner": "nixos", 442 462 "repo": "nixpkgs", 443 - "rev": "76701a179d3a98b07653e2b0409847499b2a07d3", 463 + "rev": "5900a0a8850cbba98e16d5a7a6ed389402dfcf4f", 444 464 "type": "github" 445 465 }, 446 466 "original": { ··· 473 493 ] 474 494 }, 475 495 "locked": { 476 - "lastModified": 1766599192, 477 - "narHash": "sha256-33vb0shMkgUgTEkh/jP/WXyoHz1nZ3dQtA/gw756+8c=", 496 + "lastModified": 1766713035, 497 + "narHash": "sha256-YFZuKia+pHDtJCOXciRoRWY05Z2zGeGAL4KSklsGBFA=", 478 498 "owner": "nix-community", 479 499 "repo": "NUR", 480 - "rev": "4988d64ccb03e95759deb75efd9c38876b0134b3", 500 + "rev": "fc7ae20903d7160a9e1b90780d5dc13c63d8d9a4", 481 501 "type": "github" 482 502 }, 483 503 "original": { ··· 491 511 "agenix": "agenix", 492 512 "claude-desktop": "claude-desktop", 493 513 "deploy-rs": "deploy-rs", 514 + "disko": "disko", 494 515 "hardware": "hardware", 495 516 "home-manager": "home-manager_2", 496 517 "import-tree": "import-tree",
+13
flake.nix
··· 44 44 zmx = { 45 45 url = "github:neurosnap/zmx"; 46 46 }; 47 + 48 + disko = { 49 + url = "github:nix-community/disko"; 50 + inputs.nixpkgs.follows = "nixpkgs"; 51 + }; 47 52 }; 48 53 49 54 outputs = { ··· 56 61 nix-darwin, 57 62 deploy-rs, 58 63 tangled, 64 + disko, 59 65 ... 60 66 }@inputs: 61 67 let ··· 73 79 74 80 # Custom packages 75 81 zmx-binary = prev.callPackage ./packages/zmx.nix { }; 82 + 83 + # Caddy with Cloudflare DNS plugin for ACME DNS challenges 84 + caddy-cloudflare = prev.caddy.withPlugins { 85 + plugins = [ "github.com/caddy-dns/cloudflare@v0.0.0-20250228175314-ec1e91950482" ]; 86 + hash = "sha256-ip9gJBnbeWP36s6HGDKjMVYxjdPGJwNNzP7vjxfjp68="; 87 + }; 76 88 }) 77 89 ]; 78 90 }; ··· 84 96 modules = [ 85 97 ./hosts/${hostname}/configuration.nix 86 98 agenix.nixosModules.default 99 + disko.nixosModules.disko 87 100 unstable-overlays 88 101 nur.modules.nixos.default 89 102 home-manager.nixosModules.home-manager
+3 -1
hosts/alastor/configuration.nix
··· 3 3 4 4 { 5 5 imports = [ 6 + ./disko.nix 6 7 ./hardware-configuration.nix 7 8 ../../modules/frps 8 9 ../../modules/status ··· 147 148 secretsFile = config.age.secrets.github-token.path; 148 149 }; 149 150 150 - # Caddy reverse proxy 151 + # Caddy reverse proxy (with Cloudflare DNS plugin for ACME) 151 152 services.caddy = { 152 153 enable = true; 154 + package = pkgs.caddy-cloudflare; 153 155 virtualHosts."knot.jaspermayone.com" = { 154 156 extraConfig = '' 155 157 tls {
+34
hosts/alastor/disko.nix
··· 1 + # Disko configuration for alastor VPS 2 + # Used by nixos-anywhere for automated partitioning 3 + { 4 + disko.devices = { 5 + disk = { 6 + main = { 7 + type = "disk"; 8 + device = "/dev/sda"; 9 + content = { 10 + type = "gpt"; 11 + partitions = { 12 + ESP = { 13 + size = "512M"; 14 + type = "EF00"; 15 + content = { 16 + type = "filesystem"; 17 + format = "vfat"; 18 + mountpoint = "/boot"; 19 + }; 20 + }; 21 + root = { 22 + size = "100%"; 23 + content = { 24 + type = "filesystem"; 25 + format = "ext4"; 26 + mountpoint = "/"; 27 + }; 28 + }; 29 + }; 30 + }; 31 + }; 32 + }; 33 + }; 34 + }
+12 -10
hosts/alastor/hardware-configuration.nix
··· 1 - # Placeholder - generate on actual server with: 2 - # nixos-generate-config --show-hardware-config > hardware-configuration.nix 1 + # Hardware configuration for alastor VPS 2 + # Auto-generated by nixos-facter via nixos-anywhere 3 3 { config, lib, pkgs, modulesPath, ... }: 4 4 5 5 { 6 - imports = [ ]; 6 + imports = [ 7 + (modulesPath + "/profiles/qemu-guest.nix") 8 + ]; 7 9 8 - # This will be overwritten when deployed to actual hardware 9 - boot.loader.grub.enable = true; 10 - boot.loader.grub.device = "/dev/sda"; 10 + # UEFI boot 11 + boot.loader.systemd-boot.enable = true; 12 + boot.loader.efi.canTouchEfiVariables = true; 13 + 14 + # Enable QEMU guest agent for better VM integration 15 + services.qemuGuest.enable = true; 11 16 12 - fileSystems."/" = { 13 - device = "/dev/sda1"; 14 - fsType = "ext4"; 15 - }; 17 + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; 16 18 }
secrets/knot-secret.age

This is a binary file and will not be displayed.