nixfiles/hosts/nixos.nix
2022-11-02 10:24:47 +00:00

77 lines
2.2 KiB
Nix

{ 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/modules/rclone-sync.nix
./storage/storage.nix
];
};
vault = nixosUnstableSystem {
specialArgs = defaultSpecialArgs;
system = "x86_64-linux";
modules = defaultModules ++ [ ./vault/vault.nix ];
};
# nix build .#nixosConfigurations.nixos-live-x86_64.config.system.build.isoImage
nixos-live-x86_64 = nixosUnstableSystem {
specialArgs = defaultSpecialArgs;
system = "x86_64-linux";
modules = defaultModules ++ [ ./nixos-live/nixos-live.nix ];
};
# nix --no-sandbox build .#nixosConfigurations.raspberry.config.system.build.sdImage
raspberry = nixosUnstableSystem {
specialArgs = defaultSpecialArgs;
system = "aarch64-linux";
modules = defaultModules ++ [ ./raspberry/raspberry.nix ];
};
}