Refactored Flake for host specific Setups

This commit is contained in:
Chris Toph 2024-09-25 14:24:57 -04:00
parent b5aa70aa3a
commit aea79d72e1

151
flake.nix
View file

@ -9,91 +9,86 @@
}; };
}; };
outputs = { self, nixpkgs, home-manager, ... }: outputs = { self, nixpkgs, home-manager, ... }: let
let ARM = "aarch64-linux"; # ARM systems
system = "x86_64-linux"; X86 = "x86_64-linux"; # x86_64 systems
lib = nixpkgs.lib; lib = nixpkgs.lib;
pkgs = import nixpkgs {
inherit system;
# overlays = [ (import ./nixos/overlays) ];
};
in { in {
nixosConfigurations = { nixosConfigurations = {
caenus = lib.nixosSystem { caenus = lib.nixosSystem {
inherit system; system = ARM;
modules = [ modules = [
./nix ./nix
./host/caenus ./host/caenus
]; ];
};
cloud = lib.nixosSystem {
inherit system;
modules = [
./nix
./host/cloud
];
};
dockge = lib.nixosSystem {
inherit system;
modules = [
./nix
./host/dockge
];
};
nix = lib.nixosSystem {
inherit system;
modules = [
./nix
./host/nix
];
};
proxy = lib.nixosSystem {
inherit system;
modules = [
./nix
./host/proxy
];
};
}; };
homeConfigurations = {
"toph@caenus" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
hostName = "caenus";
modules = [ ./home-manager ];
specialArgs = { inherit hostName; };
};
"toph@cloud" = home-manager.lib.homeManagerConfiguration { cloud = lib.nixosSystem {
inherit pkgs; system = X86;
hostName = "cloud"; modules = [
modules = [ ./home-manager ]; ./nix
specialArgs = { inherit hostName; }; ./host/cloud
}; ];
};
"toph@dockge" = home-manager.lib.homeManagerConfiguration { dockge = lib.nixosSystem {
inherit pkgs; system = X86;
hostName = "dockge"; modules = [
modules = [ ./home-manager ]; ./nix
specialArgs = { inherit hostName; }; ./host/dockge
}; ];
};
"toph@nix" = home-manager.lib.homeManagerConfiguration { nix = lib.nixosSystem {
inherit pkgs; system = X86;
hostName = "nix"; modules = [
modules = [ ./home-manager ]; ./nix
specialArgs = { inherit hostName; }; ./host/nix
}; ];
};
"toph@proxy" = home-manager.lib.homeManagerConfiguration { proxy = lib.nixosSystem {
inherit pkgs; system = X86;
hostName = "proxy"; modules = [
modules = [ ./home-manager ]; ./nix
specialArgs = { inherit hostName; }; ./host/proxy
}; ];
}; };
}; };
homeConfigurations = let
armPkgs = import nixpkgs {
system = ARM;
};
x86Pkgs = import nixpkgs {
system = X86;
# overlays = [ (import ./nixos/overlays) ];
};
in {
"toph@caenus" = home-manager.lib.homeManagerConfiguration {
pkgs = armPkgs;
modules = [ ./home ];
};
"toph@cloud" = home-manager.lib.homeManagerConfiguration {
pkgs = x86Pkgs;
modules = [ ./home ];
};
"toph@dockge" = home-manager.lib.homeManagerConfiguration {
pkgs = x86Pkgs;
modules = [ ./home ];
};
"toph@nix" = home-manager.lib.homeManagerConfiguration {
pkgs = x86Pkgs;
modules = [ ./home ];
};
"toph@proxy" = home-manager.lib.homeManagerConfiguration {
pkgs = x86Pkgs;
modules = [ ./home ];
};
};
};
} }