architect: Moved tailscale config to new network attribute set
This commit is contained in:
parent
26a07a20e5
commit
65c76f5a6a
@ -1,24 +1,38 @@
|
||||
{ config, lib, ... }:
|
||||
|
||||
let
|
||||
network = import ./network.nix;
|
||||
|
||||
ifname = "ts0";
|
||||
domain = "devs.giugl.io";
|
||||
# device.address device.hostname
|
||||
generateDeviceStrings = devices: lib.concatStringsSep "\n"
|
||||
(lib.mapAttrsToList (name: device: "${device.address} ${device.hostname}") devices);
|
||||
in
|
||||
{
|
||||
architect.firewall.openUDP = [ config.services.tailscale.port ];
|
||||
architect = {
|
||||
firewall.openUDP = [ config.services.tailscale.port ];
|
||||
|
||||
networks.tailscale = {
|
||||
interface = "ts0";
|
||||
net = "100.64.0.0/10";
|
||||
|
||||
devices = {
|
||||
architect = { address = "100.64.0.1"; hostname = "architect.${domain}"; };
|
||||
kmerr = { address = "100.64.0.2"; hostname = "kmerr.${domain}"; };
|
||||
chuck = { address = "100.64.0.4"; hostname = "chuck.${domain}"; };
|
||||
dodino = { address = "100.64.0.5"; hostname = "dodino.${domain}"; };
|
||||
manduria = { address = "100.64.0.6"; hostname = "manduria.${domain}"; };
|
||||
tommy = { address = "100.64.0.7"; hostname = "tommy.${domain}"; };
|
||||
ucsb-workstation = { address = "100.64.0.8"; hostname = "ucsb-workstation.${domain}"; };
|
||||
alfredo = { address = "100.64.0.9"; hostname = "alfredo.${domain}"; };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services = {
|
||||
tailscale = {
|
||||
enable = true;
|
||||
interfaceName = ifname;
|
||||
interfaceName = config.architect.networks.tailscale.interface;
|
||||
};
|
||||
};
|
||||
|
||||
networking.extraHosts = ''
|
||||
${network.architect-ts} architect.devs.giugl.io
|
||||
${network.giuliopc-ts} kmerr.devs.giugl.io
|
||||
${network.dodino-ts} dodino.devs.giugl.io
|
||||
${network.giuliophone-ts} chuck.devs.giugl.io
|
||||
'';
|
||||
networking.extraHosts = generateDeviceStrings config.architect.networks.tailscale.devices;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user