{self, ...} @ inputs: let mkTree = inputs.tree-input.tree; metaTree = mkTree ((import ../treeConfig.nix {}) // {inherit inputs;}); tree = metaTree.impure; nixpkgs = inputs.nixpkgs-unstable; home-manager = inputs.home-manager-unstable; patchedInputs = inputs // { # set these to the correct versions from inputs inherit nixpkgs home-manager; }; specialArgs = { inherit self; tree = metaTree.impure; pureTree = metaTree.pure; inputs = patchedInputs; }; defaultModules = [ tree.profiles.home-manager.base tree.modules.home.vscode-mod-module ]; pkgsFor = system: import nixpkgs { inherit system; config.allowUnfree = true; overlays = [ (import ../overlay) ]; }; in rec { "blahaj-chaos" = home-manager.lib.homeManagerConfiguration { pkgs = pkgsFor "x86_64-linux"; extraSpecialArgs = specialArgs; modules = defaultModules ++ [./blahaj/chaos.nix]; }; }