dotfiles.nix/flake-parts/nixos/hosts.nix
2023-03-24 08:56:54 -07:00

70 lines
1.9 KiB
Nix

{
self,
inputs,
...
}: {
flake = {
nixosModules.base = {config, ...}: {
imports = [
../../nixos/cachix
../../nixos/profiles/common.nix
../../nixos/profiles/linux-common.nix
inputs.home-manager.nixosModules.home-manager
self.nixosModules.default
self.nixosModules.home-manager-integration
self.nixosModules.nix-useCachix
self.nixosModules.nixpkgs-useFlakeNixpkgs
];
nixpkgs.overlays = builtins.attrValues self.overlays;
nixpkgs.config.allowUnfree = true;
home-manager = {
sharedModules = [self.homeManagerModules.user-willem-linux];
};
};
darwinModules.base = {config, ...}: {
imports = [
../../nixos/profiles/common.nix
inputs.home-manager.darwinModules.home-manager
self.nixosModules.custom-linkNixInputs
self.nixosModules.home-manager-integration
self.nixosModules.nix-useCachix
self.nixosModules.nixpkgs-useFlakeNixpkgs
];
nixpkgs.overlays = builtins.attrValues self.overlays;
nixpkgs.config.allowUnfree = true;
home-manager = {
sharedModules = [self.homeManagerModules.user-willem-darwin];
};
};
nixosConfigurations.zeusvm = inputs.nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
modules = [
self.nixosModules.base
../../nixos/hosts/zeus.utmvm.nix
];
};
nixosConfigurations.zeusasahi = inputs.nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
modules = [
self.nixosModules.appleSilicon
self.nixosModules.base
../../nixos/hosts/zeus.asahi.nix
];
};
darwinConfigurations.zeus = inputs.darwin.lib.darwinSystem {
system = "aarch64-darwin";
modules = [
self.darwinModules.base
../../nixos/hosts/zeus.darwin.nix
];
};
};
}