Files
athens/nix/nixos.nix
T

39 lines
1023 B
Nix
Raw Normal View History

2024-12-07 20:46:15 -05:00
{
self,
nixpkgs,
home-manager,
2026-07-27 17:15:39 -04:00
nixos-hardware,
2024-12-07 20:46:15 -05:00
sops-nix,
...
}:
2023-07-27 15:22:16 -04:00
let
2024-12-07 20:46:15 -05:00
mkSystem =
hostName: modules:
2023-07-27 15:22:16 -04:00
let
hostSystem = self.hosts.${hostName}.system;
in
nixpkgs.lib.nixosSystem {
modules = [
home-manager.nixosModules.home-manager
(_: {
networking.hostName = hostName;
2023-07-27 15:51:15 -04:00
nixpkgs.overlays = [ self.overlays.default ];
nixpkgs.config.allowUnfree = true;
2023-07-27 15:22:16 -04:00
})
2025-06-01 14:21:00 -04:00
{ nixpkgs.hostPlatform = hostSystem; }
2025-08-18 10:31:48 -04:00
]
++ modules;
2026-07-27 17:15:39 -04:00
specialArgs = { inherit nixos-hardware sops-nix; };
2023-07-27 15:22:16 -04:00
};
in
{
# Aristotle
2026-02-02 14:47:16 -05:00
agent = mkSystem "agent" [ ../hosts/aristotle/configuration.nix ];
form = mkSystem "form" [ ../hosts/aristotle/configuration.nix ];
matter = mkSystem "matter" [ ../hosts/aristotle/configuration.nix ];
purpose = mkSystem "purpose" [ ../hosts/aristotle/configuration.nix ];
2023-07-27 15:22:16 -04:00
2026-02-02 14:47:16 -05:00
plato = mkSystem "plato" [ ../hosts/plato/configuration.nix ];
socrates = mkSystem "socrates" [ ../hosts/socrates/configuration.nix ];
2023-07-27 15:22:16 -04:00
}