2024-01-21 20:08:27 -05:00
|
|
|
deviceName: {config, ...}: let
|
|
|
|
inherit (config.vars) mainUser hostName;
|
2024-01-23 23:42:41 -05:00
|
|
|
|
2024-02-01 11:48:38 -05:00
|
|
|
clusterIP = config.services.pcsd.virtualIps.caddy-vip.ip;
|
2024-01-21 20:08:27 -05:00
|
|
|
in {
|
|
|
|
imports = [
|
|
|
|
./hardware-configuration.nix
|
|
|
|
|
|
|
|
../../modules/kmscon.nix
|
|
|
|
../../modules/sshd.nix
|
|
|
|
../../modules/tailscale.nix
|
2024-01-21 22:11:38 -05:00
|
|
|
|
2024-02-01 11:48:38 -05:00
|
|
|
./modules/pcsd.nix
|
2024-01-21 20:08:27 -05:00
|
|
|
];
|
|
|
|
|
|
|
|
vars = {
|
|
|
|
mainUser = "matt";
|
|
|
|
hostName = deviceName;
|
2024-01-24 18:39:18 -05:00
|
|
|
promptMainColor =
|
|
|
|
if deviceName == "thingone"
|
|
|
|
then "green"
|
|
|
|
else if deviceName == "thingtwo"
|
|
|
|
then "red"
|
|
|
|
else "purple";
|
2024-01-21 20:08:27 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
users.users.${mainUser} = {
|
|
|
|
isNormalUser = true;
|
|
|
|
extraGroups = [
|
|
|
|
"wheel"
|
|
|
|
"adm"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
|
|
|
home-manager.users.${mainUser} = {
|
|
|
|
imports = [];
|
|
|
|
|
|
|
|
# No touchy
|
|
|
|
home.stateVersion = "24.05";
|
|
|
|
};
|
|
|
|
|
|
|
|
networking = {
|
|
|
|
inherit hostName;
|
|
|
|
resolvconf.enable = true;
|
2024-01-23 23:42:41 -05:00
|
|
|
nameservers = [
|
|
|
|
clusterIP
|
|
|
|
"1.0.0.1"
|
|
|
|
];
|
2024-01-26 20:43:09 -05:00
|
|
|
extraHosts = ''
|
|
|
|
10.0.0.244 thingone
|
|
|
|
10.0.0.159 thingtwo
|
|
|
|
'';
|
2024-01-21 20:08:27 -05:00
|
|
|
firewall.enable = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
# Set your time zone.
|
|
|
|
time.timeZone = "America/Montreal";
|
|
|
|
|
|
|
|
# No touchy
|
|
|
|
system.stateVersion = "24.05";
|
|
|
|
}
|