chore: update topology information

This commit is contained in:
Leon Schwarzäugl 2025-12-19 17:42:04 +01:00
parent 494ac8b862
commit 4b51505fbb
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
15 changed files with 137 additions and 92 deletions

View file

@ -5,6 +5,7 @@
./disk-config.nix ./disk-config.nix
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
"${self}/modules/nixos/optional/nix-topology-self.nix"
]; ];
node.lockFromBootstrapping = lib.mkForce false; node.lockFromBootstrapping = lib.mkForce false;

View file

@ -5,6 +5,7 @@
./disk-config.nix ./disk-config.nix
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
"${self}/modules/nixos/optional/nix-topology-self.nix"
]; ];
topology.self = { topology.self = {

View file

@ -8,18 +8,9 @@ in
./disk-config.nix ./disk-config.nix
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
"${self}/modules/nixos/optional/nix-topology-self.nix"
]; ];
topology.self = {
icon = "devices.cloud-server";
interfaces.wg = {
addresses = [ "192.168.3.4" ];
renderer.hidePhysicalConnections = true;
virtual = true;
type = "wireguard";
};
};
system.stateVersion = "23.11"; system.stateVersion = "23.11";
services.syncthing = { services.syncthing = {

View file

@ -5,6 +5,7 @@
./disk-config.nix ./disk-config.nix
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
"${self}/modules/nixos/optional/nix-topology-self.nix"
]; ];
topology.self = { topology.self = {

View file

@ -16,6 +16,11 @@ in
]; ];
topology.self.interfaces = {
"eth1" = { };
"wifi" = { };
};
swarselsystems = { swarselsystems = {
isLaptop = true; isLaptop = true;
isNixos = true; isNixos = true;

View file

@ -5,6 +5,7 @@
./disk-config.nix ./disk-config.nix
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
"${self}/modules/nixos/optional/nix-topology-self.nix"
]; ];
topology.self = { topology.self = {

View file

@ -8,6 +8,17 @@
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
]; ];
topology.self = {
interfaces = {
"eth1" = { };
"eth2" = { };
"eth3" = { };
"eth4" = { };
"eth5" = { };
"eth6" = { };
};
};
swarselsystems = { swarselsystems = {
info = "HUNSN RM02, 8GB RAM"; info = "HUNSN RM02, 8GB RAM";
flakePath = "/root/.dotfiles"; flakePath = "/root/.dotfiles";

View file

@ -16,6 +16,8 @@ in
WLR_RENDERER_ALLOW_SOFTWARE = 1; WLR_RENDERER_ALLOW_SOFTWARE = 1;
}; };
topology.self.interfaces."demo host" = { };
services.qemuGuest.enable = true; services.qemuGuest.enable = true;
boot = { boot = {

View file

@ -21,6 +21,14 @@ in
]; ];
topology.self = {
interfaces = {
"eth1" = { };
"wifi" = { };
"fritz-wg" = { };
};
};
swarselsystems = { swarselsystems = {
lowResolution = "1280x800"; lowResolution = "1280x800";
highResolution = "2560x1600"; highResolution = "2560x1600";

View file

@ -8,6 +8,13 @@
"${self}/modules/nixos/optional/microvm-host.nix" "${self}/modules/nixos/optional/microvm-host.nix"
]; ];
topology.self = {
interfaces = {
"eth1" = { };
"eth2" = { };
};
};
boot = { boot = {
loader.systemd-boot.enable = true; loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true; loader.efi.canTouchEfiVariables = true;

View file

@ -6,6 +6,8 @@
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
topology.self.interfaces."bootstrapper" = { };
networking = { networking = {
hostName = "toto"; hostName = "toto";
firewall.enable = false; firewall.enable = false;

View file

@ -5,8 +5,11 @@
./hardware-configuration.nix ./hardware-configuration.nix
"${self}/modules/nixos/optional/systemd-networkd-server.nix" "${self}/modules/nixos/optional/systemd-networkd-server.nix"
"${self}/modules/nixos/optional/nix-topology-self.nix"
]; ];
topology.self.interfaces."eth1" = { };
boot = { boot = {
loader.systemd-boot.enable = true; loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true; loader.efi.canTouchEfiVariables = true;

View file

@ -0,0 +1,13 @@
{ config, globals, ... }:
{
topology.self = {
icon = lib.mkIf config.swarselsystems.isCloud "devices.cloud-server";
interfaces.wan = lib.mkIf config.swarselsystems.isCloud { };
interfaces.wg = lib.mkIf (config.swarselsystems.server.wireguard.isClient || config.swarselsystems.server.wireguard.isServer) {
addresses = [ globals.networks.twothreetunnel-wg.hosts.${config.node.name}.ipv4 ];
renderer.hidePhysicalConnections = true;
virtual = true;
type = "wireguard";
};
};
}

View file

@ -7,6 +7,7 @@
perSystem.topology.modules = [ perSystem.topology.modules = [
({ config, ... }: ({ config, ... }:
let let
inherit (self.outputs) globals;
inherit (config.lib.topology) inherit (config.lib.topology)
mkInternet mkInternet
mkDevice mkDevice
@ -21,95 +22,89 @@
networks = { networks = {
home-lan = { home-lan = {
name = "Home LAN"; name = "Home LAN";
cidrv4 = "192.168.1.0/24"; inherit (globals.networks.home-lan) cidrv4;
};
fritz-wg = {
name = "Wireguard Tunnel for Fritzbox net access";
inherit (globals.networks.twothreetunnel-wg) cidrv4;
}; };
wg = { wg = {
name = "Wireguard Tunnel"; name = "Wireguard Tunnel for proxy access";
cidrv4 = "192.168.3.0/24"; inherit (globals.networks.twothreetunnel-wg) cidrv4;
}; };
}; };
nodes = { nodes = {
internet = mkInternet { internet = mkInternet {
connections = [ connections = [
(mkConnection "fritzbox" "dsl")
(mkConnection "moonside" "wan") (mkConnection "moonside" "wan")
(mkConnection "pfsense" "wan") (mkConnection "belchsfactory" "wan")
(mkConnection "milkywell" "wan") (mkConnection "twothreetunnel" "wan")
(mkConnection "stoicclub" "wan")
(mkConnection "liliputsteps" "wan")
(mkConnection "eagleland" "wan")
(mkConnection "magicant" "wifi") (mkConnection "magicant" "wifi")
(mkConnection "toto" "bootstrapper") (mkConnection "toto" "bootstrapper")
(mkConnection "hotel" "demo host") (mkConnection "hotel" "demo host")
]; ];
}; };
hotel.interfaces."demo host" = { };
toto.interfaces."bootstrapper" = { };
milkywell.interfaces.wan = { };
moonside.interfaces.wan = { };
pfsense = mkRouter "pfSense" { fritzbox = mkRouter "FRITZ!Box" {
info = "HUNSN RM02"; info = "FRITZ!Box 7682";
image = "${self}/files/topology-images/hunsn.png"; image = "${self}/files/topology-images/hunsn.png";
interfaceGroups = [ interfaceGroups = [
[ [
"eth1"
"eth2" "eth2"
"eth3" "eth3"
"eth4" "eth-wan"
"eth5" "wifi"
"eth6"
] ]
[ "wan" ] [ "dsl" ]
]; ];
interfaces.wg = {
addresses = [ "192.168.3.1" ];
network = "wg";
virtual = true;
type = "wireguard";
};
connections = { connections = {
eth2 = mkConnection "switch-livingroom" "eth1"; eth1 = mkConnection "winters" "eth1";
eth4 = mkConnection "winters" "eth1"; eth2 = mkConnection "switch-bedroom" "eth1";
eth3 = mkConnection "switch-bedroom" "eth1"; eth3 = mkConnection "switch-livingroom" "eth1";
eth6 = mkConnection "wifi-ap" "eth1"; eth-wan = mkConnection "hintbooth" "eth6";
wg = mkConnection "moonside" "wg"; wgPyramid = mkConnection "pyramid" "fritz-wg";
wgMagicant = mkConnection "magicant" "fritz-wg";
wifiPyramid = mkConnection "pyramid" "wifi";
wifiMagicant = mkConnection "magicant" "wifi";
wifiBakery = mkConnection "bakery" "wifi";
wifiMachpizza = mkConnection "machpizza" "wifi";
}; };
interfaces = { interfaces = {
eth1 = {
addresses = [ globals.networks.home-lan.hosts.fritzbox.ipv4 ];
network = "home-lan";
};
eth2 = { eth2 = {
addresses = [ "192.168.1.1" ]; addresses = [ globals.networks.home-lan.hosts.fritzbox.ipv4 ];
network = "home-lan"; network = "home-lan";
}; };
eth3 = { eth3 = {
addresses = [ "192.168.1.1" ]; addresses = [ globals.networks.home-lan.hosts.fritzbox.ipv4 ];
network = "home-lan"; network = "home-lan";
}; };
eth4 = { eth-wan = {
addresses = [ "192.168.1.1" ]; addresses = [ globals.networks.home-lan.hosts.fritzbox.ipv4 ];
network = "home-lan"; network = "home-lan";
}; };
eth6 = { wifi = {
addresses = [ "192.168.1.1" ]; addresses = [ globals.networks.home-lan.hosts.fritzbox.ipv4 ];
virtual = true;
network = "home-lan"; network = "home-lan";
}; };
}; fritz-wg = {
}; addresses = [ globals.networks.fritz-wg.hosts.fritzbox.ipv4 ];
network = "wg";
winters.interfaces."eth1" = { }; virtual = true;
bakery.interfaces = { type = "wireguard";
"eth1" = { }; };
"wifi" = { };
};
wifi-ap = mkSwitch "Wi-Fi AP" {
info = "Huawei";
image = "${self}/files/topology-images/huawei.png";
interfaceGroups = [
[
"eth1"
"wifi"
]
];
connections = {
wifi = mkConnection "bakery" "wifi";
}; };
}; };
@ -135,33 +130,6 @@
}; };
}; };
nswitch = mkDevice "Nintendo Switch" {
info = "Nintendo Switch";
image = "${self}/files/topology-images/nintendo-switch.png";
interfaces.eth1 = { };
};
magicant = mkDevice "magicant" {
icon = "${self}/files/topology-images/phone.png";
info = "Samsung Z Flip 6";
image = "${self}/files/topology-images/zflip6.png";
interfaces.wifi = { };
};
machpizza = mkDevice "machpizza" {
info = "MacBook Pro 2016";
icon = "${self}/files/topology-images/mac.png";
interfaces."eth1" = { };
};
pc = mkDevice "Windows Gaming Server" {
info = "i7-4790k, GTX970, 32GB RAM";
image = "${self}/files/topology-images/pc.png";
interfaces.eth1 = { };
};
pyramid.interfaces.eth1 = { };
switch-bedroom = mkSwitch "Switch Bedroom" { switch-bedroom = mkSwitch "Switch Bedroom" {
info = "TL-SG1005D"; info = "TL-SG1005D";
image = "${self}/files/topology-images/TL-SG1005D.png"; image = "${self}/files/topology-images/TL-SG1005D.png";
@ -178,6 +146,37 @@
connections.eth3 = mkConnection "machpizza" "eth1"; connections.eth3 = mkConnection "machpizza" "eth1";
}; };
nswitch = mkDevice "Nintendo Switch" {
info = "Nintendo Switch";
image = "${self}/files/topology-images/nintendo-switch.png";
interfaces.eth1 = { };
};
magicant = mkDevice "magicant" {
icon = "${self}/files/topology-images/phone.png";
info = "Samsung Z Flip 6";
image = "${self}/files/topology-images/zflip6.png";
interfaces = {
wifi = { };
fritz-wg = { };
};
};
machpizza = mkDevice "machpizza" {
info = "MacBook Pro 2016";
icon = "${self}/files/topology-images/mac.png";
interfaces = {
eth1 = { };
wifi = { };
};
};
pc = mkDevice "Windows Gaming Server" {
info = "i7-4790k, GTX970, 32GB RAM";
image = "${self}/files/topology-images/pc.png";
interfaces.eth1 = { };
};
printer = mkDevice "Printer" { printer = mkDevice "Printer" {
info = "DELL C2665dnf"; info = "DELL C2665dnf";
image = "${self}/files/topology-images/DELL-C2665dnf.png"; image = "${self}/files/topology-images/DELL-C2665dnf.png";

View file

@ -1,5 +1,5 @@
{ {
"data": "ENC[AES256_GCM,data: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,iv:dHojDlbXWHw/EkpZkAJjT25TRh5vvVUxRY+Y9pbFBxA=,tag:E6DwDyrk79dS49wjX9XLag==,type:str]", "data": "ENC[AES256_GCM,data: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,iv:/e9U+fXMYBOjubsIOKa3dZV6bs6F+OqTyBryUrwPySM=,tag:ThVhvz+Hg6Wq8MMkR4eQOw==,type:str]",
"sops": { "sops": {
"age": [ "age": [
{ {
@ -51,8 +51,8 @@
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvbTFqR3RScWxnTFR3dlhv\nNUNEVGRkUDB4L3J6ckJIMWZCWk44RjdpVmxRCkhzZTBuSGduanBmQWsvNW5XMWQv\nYVZmNS9FVzN3a05kUVBheDljYUUrcHcKLS0tIGxPN1dWVkg4NUpnZGJ6VWFJWFVZ\nYnNvRG94MmFxYnlDQ0JyeDNFQldzdlkKsp+nYSR6Lxq8b3/dpMO7uTbNnO0Bva7w\nb9s908PLaZEN1jywEoba3yq743vuEHCKQWFIfDtsRcbNR6Yr4d2eGw==\n-----END AGE ENCRYPTED FILE-----\n" "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvbTFqR3RScWxnTFR3dlhv\nNUNEVGRkUDB4L3J6ckJIMWZCWk44RjdpVmxRCkhzZTBuSGduanBmQWsvNW5XMWQv\nYVZmNS9FVzN3a05kUVBheDljYUUrcHcKLS0tIGxPN1dWVkg4NUpnZGJ6VWFJWFVZ\nYnNvRG94MmFxYnlDQ0JyeDNFQldzdlkKsp+nYSR6Lxq8b3/dpMO7uTbNnO0Bva7w\nb9s908PLaZEN1jywEoba3yq743vuEHCKQWFIfDtsRcbNR6Yr4d2eGw==\n-----END AGE ENCRYPTED FILE-----\n"
} }
], ],
"lastmodified": "2025-12-04T23:12:18Z", "lastmodified": "2025-12-19T16:02:26Z",
"mac": "ENC[AES256_GCM,data:PzZro7emdnVU18DBrLzIcsJgFk8WzNT9uTZydHlHsdDZj2zTwQFrvQ+T6I8ZMDJ8e4DISC9yGcmMYIm/LebGUROGUQHIBfKH7VpWOaFUZj8N0FksQGdWso/Q83jO7TPMQXqUg80WIBT00hoNgWznZpHR15TNKJSvGo91Wrb0Ms4=,iv:UHL+biMhOOXZ2IRLhH7gQTg01VuwyqS2xOjfhqGzjpI=,tag:9Va8ieM8upWt0Mxk4rJ6cQ==,type:str]", "mac": "ENC[AES256_GCM,data:jP8kwTNwYRteIxbk5Zu8VHzapyVvUUTCmq67agl+uRYNaPmtkZiBjmrG8oN0hWgEpbytrvKPZzWJ92NTxzyGdvW7sIHX2z6PTU0O1u/x4jmWKvv/zDZhy9+7kVlWYrc7AO7gIRdzWtHmOzYkm2+soNmq/cd5sj2/DeiksmUK/10=,iv:qKayuVRwMg+qfEuYhIGqG1fx46SpKA9UFlt7aBSDhLM=,tag:fl0j4VBMaQzmA0clFEcEwg==,type:str]",
"pgp": [ "pgp": [
{ {
"created_at": "2025-12-15T21:53:38Z", "created_at": "2025-12-15T21:53:38Z",