{ nixpkgs , nixos-hardware , agenix , home-manager , lix-module , nixpkgs-caddy , ... }: let agenixOverlay = final: prev: { agenix = agenix.packages.${prev.system}.default; }; pkgs = system: import nixpkgs { inherit system; overlays = [ agenixOverlay ]; config.allowUnfree = true; }; pkgs-caddy = system: import nixpkgs-caddy { inherit system; config.allowUnfree = true; }; myModule = { imports = [ lix-module.nixosModules.default ../modules ]; }; proxmoxModule = { imports = [ "${nixpkgs}/nixos/modules/virtualisation/proxmox-lxc.nix" ../modules/virtualisation/proxmox.nix ]; }; in { deadbeef = nixpkgs.lib.nixosSystem { pkgs = pkgs "x86_64-linux"; modules = [ myModule ./deadbeef nixos-hardware.nixosModules.dell-xps-15-9560 home-manager.nixosModules.home-manager agenix.nixosModules.default ]; specialArgs = { # inherit nixvim nix-index-database; }; }; arr = nixpkgs.lib.nixosSystem { pkgs = pkgs "x86_64-linux"; modules = [ myModule proxmoxModule ./arr agenix.nixosModules.default ]; specialArgs = { # inherit nixvim nix-index-database; }; }; metrics = nixpkgs.lib.nixosSystem { pkgs = pkgs "x86_64-linux"; modules = [ myModule proxmoxModule ./metrics agenix.nixosModules.default ]; specialArgs = { pkgs-caddy = pkgs-caddy "x86_64-linux"; }; }; }