2023-06-20 19:28:14 -05:00
|
|
|
{ inputs, overlays, ... }:
|
2023-05-11 09:32:05 -05:00
|
|
|
let
|
|
|
|
|
mac = {
|
|
|
|
|
system ? "aarch64-darwin",
|
|
|
|
|
name,
|
2023-06-20 19:28:14 -05:00
|
|
|
channel ? inputs.nixunstable,
|
2023-11-27 16:17:26 -06:00
|
|
|
hm ? inputs.hmunstable,
|
2023-05-11 09:32:05 -05:00
|
|
|
extraMods ? []
|
|
|
|
|
}:
|
|
|
|
|
let
|
2023-06-20 11:52:10 -05:00
|
|
|
nixpkgs = import channel {
|
2023-06-20 15:55:02 -05:00
|
|
|
inherit system overlays;
|
2023-06-20 11:52:10 -05:00
|
|
|
};
|
2023-06-20 19:28:14 -05:00
|
|
|
in inputs.darwin.lib.darwinSystem {
|
2023-05-11 09:32:05 -05:00
|
|
|
inherit system;
|
|
|
|
|
specialArgs = { inherit nixpkgs; };
|
|
|
|
|
modules = [
|
2023-06-20 11:00:12 -05:00
|
|
|
{
|
2024-02-09 14:33:51 -06:00
|
|
|
nixpkgs.overlays = overlays;
|
|
|
|
|
home-manager.extraSpecialArgs = {
|
|
|
|
|
inherit inputs;
|
|
|
|
|
host = name;
|
2024-01-22 12:15:46 -06:00
|
|
|
};
|
2023-06-20 11:00:12 -05:00
|
|
|
}
|
2024-02-09 14:33:51 -06:00
|
|
|
hm.darwinModules.home-manager
|
|
|
|
|
inputs.self.modules.darwinModule
|
2023-05-11 09:32:05 -05:00
|
|
|
./${name}
|
|
|
|
|
] ++ extraMods;
|
|
|
|
|
};
|
2023-06-20 11:52:10 -05:00
|
|
|
in rec {
|
2023-06-20 15:55:02 -05:00
|
|
|
# Duplicate all the things, because nix-darwin does different things with case sensitivity
|
|
|
|
|
# depending on where you live
|
|
|
|
|
C02G48H8MD6R = mac { system = "x86_64-darwin"; name = "work"; };
|
|
|
|
|
c02g48h8md6r = C02G48H8MD6R;
|
|
|
|
|
|
2023-05-11 09:32:05 -05:00
|
|
|
la23002 = mac { name = "ivr"; };
|
2023-06-20 11:52:10 -05:00
|
|
|
LA23002 = la23002;
|
2023-05-11 09:32:05 -05:00
|
|
|
}
|