{ self, nixpkgs-unstable, tree, ... }@inputs: let defaults = import ./defaults.nix inputs; defaultSpecialArgs = defaults.defaultSpecialArgs // { inputs = inputs // { # set these to the correct versions from inputs nixpkgs = inputs.nixpkgs-unstable; home-manager = inputs.home-manager-unstable; }; }; defaultModules = defaults.defaultModules ++ [ # NO_INLINE tree.impure.profiles.base inputs.home-manager-unstable.nixosModules.home-manager inputs.gitlab_artifacts_sync.nixosModule ]; nixosUnstableSystem = nixpkgs-unstable.lib.nixosSystem; in { lappy = nixosUnstableSystem { specialArgs = defaultSpecialArgs; system = "x86_64-linux"; modules = defaultModules ++ [ ./lappy/lappy.nix ./lappy/hardware.nix ]; }; lappy-vm = nixosUnstableSystem { specialArgs = defaultSpecialArgs; system = "x86_64-linux"; modules = defaultModules ++ [ ./lappy/lappy.nix ./lappy/vm.nix ]; }; rescue-x86_64 = nixosUnstableSystem { specialArgs = defaultSpecialArgs; system = "x86_64-linux"; modules = defaultModules ++ [ ./rescue/rescue.nix ]; }; hetzner-vm = nixosUnstableSystem { specialArgs = defaultSpecialArgs; system = "x86_64-linux"; modules = defaultModules ++ [ ./hetzner-vm/hetzner-vm.nix ]; }; storage = nixosUnstableSystem { specialArgs = defaultSpecialArgs; system = "x86_64-linux"; modules = defaultModules ++ [ ./storage/modules/rclone-serve.nix ./storage/storage.nix ]; }; # nix --no-sandbox build .#nixosConfigurations.raspberry.config.system.build.sdImage raspberry = nixosUnstableSystem { specialArgs = defaultSpecialArgs; system = "aarch64-linux"; modules = defaultModules ++ [ ./raspberry/raspberry.nix ]; }; }