{ self, nixpkgs, home-manager, vault-secrets, deploy-rs, ... }@inputs: let mkTree = import ./tree.nix { inherit (nixpkgs) lib; }; tree = mkTree { inherit inputs; folder = ./.; config = { "hosts/*/services".functor.enable = true; "profiles/*".functor.enable = true; "users/*".functor.enable = true; "home/*".functor.enable = true; "home/apps/*".functor.enable = true; "home/programming/languages/*".functor.enable = true; "modules/nixos" = { functor = { enable = true; external = [ (import (inputs.vault-secrets + "/modules/vault-secrets.nix")) ]; }; }; }; }; in { #legacyPackages.tree = tree; nixosConfigurations = import ./hosts ({ inherit tree; } // inputs); deploy.nodes.lappy = { hostname = "localhost"; profiles.system = { user = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.lappy; }; }; deploy.nodes.hetzner-vm = { hostname = "65.21.182.73"; username = "root"; profiles.system = { user = "root"; path = deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.hetzner-vm; }; }; }