diff --git a/assets/devices-diagram.d2 b/assets/devices-diagram.d2 deleted file mode 100644 index 10b16ccb..00000000 --- a/assets/devices-diagram.d2 +++ /dev/null @@ -1,235 +0,0 @@ -title: Device Architecture Overview { - near: top-center - shape: text - style: { - font-size: 24 - bold: true - } -} - -# Device Groups -servers: Server Infrastructure { - style.fill: "#e8f4fd" - style.stroke: "#1e3a8a" - style.stroke-width: 2 - - mirai: mirai { - shape: rectangle - style.fill: "#fbbf24" - - label: "mirai\nMain Server\nx86_64-linux\nUser: fs0c131y\nHeadless" - - services: Services { - shape: cylinder - style.fill: "#34d399" - label: "Services\n• Nextcloud\n• Gitea\n• Minecraft\n• Immich\n• Paperless\n• Tailscale\n• And more..." - } - } - - deoxys: deoxys { - shape: rectangle - style.fill: "#a78bfa" - label: "deoxys\nVM Server\nx86_64-linux\nUser: servius\nHeadless" - } - - tsuba: tsuba { - shape: rectangle - style.fill: "#fb7185" - label: "tsuba\nRaspberry Pi\naarch64-linux\nUser: servius\nHeadless" - } -} - -workstations: Development Workstations { - style.fill: "#f0fdf4" - style.stroke: "#15803d" - style.stroke-width: 2 - - ryu: ryu { - shape: rectangle - style.fill: "#3b82f6" - label: "ryu\nMain Desktop\nx86_64-linux\nUser: servius\nHyprland + GNOME" - - monitors: Multi-Monitor Setup { - style.fill: "#ddd6fe" - - primary: "HDMI-A-1\n(Gigabyte FO27Q3)" { - shape: rectangle - style.fill: "#c4b5fd" - } - secondary: "DP-3\n(Acer XV272U)" { - shape: rectangle - style.fill: "#c4b5fd" - } - tertiary: "DP-1\n(Gigabyte M27Q)" { - shape: rectangle - style.fill: "#c4b5fd" - } - } - } - - shiro: shiro { - shape: rectangle - style.fill: "#9ca3af" - label: "shiro\nMac Mini Desktop\naarch64-darwin\nUser: servius\nBuild Server" - } -} - -mobile: Portable Devices { - style.fill: "#fef3c7" - style.stroke: "#d97706" - style.stroke-width: 2 - - kuro: kuro { - shape: rectangle - style.fill: "#6b7280" - label: "kuro\nMacBook\naarch64-darwin\nUser: fs0c131y" - } - - deck: SteamDeck { - shape: rectangle - style.fill: "#ef4444" - label: "SteamDeck\nGaming Handheld\nx86_64-linux\nUser: deck\nHome Manager Only" - } -} - -# Network Infrastructure -network: Network Infrastructure { - style.fill: "#fdf2f8" - style.stroke: "#db2777" - style.stroke-width: 2 - - tailscale: Tailscale VPN { - shape: cloud - style.fill: "#ec4899" - } - - zerotier: ZeroTier Network { - shape: cloud - style.fill: "#f97316" - } - - local_network: Local Network { - shape: cloud - style.fill: "#06b6d4" - } -} - -# Build Infrastructure -builders: Build Machines { - style.fill: "#f5f5f4" - style.stroke: "#525252" - style.stroke-width: 2 - - build_info: "Distributed Builds\nmirai, shiro (+ tsuba)" { - shape: text - style.font-size: 14 - style.bold: true - } -} - -# Configuration Management -config_mgmt: Configuration Management { - style.fill: "#fefce8" - style.stroke: "#ca8a04" - style.stroke-width: 2 - - nixos_flake: NixOS Flake { - shape: hexagon - style.fill: "#facc15" - } - - home_manager: Home Manager { - shape: hexagon - style.fill: "#eab308" - } - - darwin: nix-darwin { - shape: hexagon - style.fill: "#f59e0b" - } -} - -# Deployment Connections -workstations.ryu -> servers.mirai: SSH Deploy { - style.stroke: "#059669" - style.stroke-width: 2 -} - -workstations.ryu -> servers.deoxys: SSH Deploy { - style.stroke: "#059669" - style.stroke-width: 2 -} - -workstations.ryu -> servers.tsuba: "SSH Deploy\n(tsuba.darksailor.dev)" { - style.stroke: "#059669" - style.stroke-width: 2 -} - -mobile.kuro -> servers.mirai: SSH Deploy { - style.stroke: "#7c3aed" - style.stroke-width: 2 -} - -mobile.kuro -> workstations.shiro: SSH Deploy { - style.stroke: "#7c3aed" - style.stroke-width: 2 -} - -workstations.ryu -> mobile.deck: "SSH Deploy\n(steamdeck)" { - style.stroke: "#dc2626" - style.stroke-width: 2 -} - -# Network connections -servers.mirai -> network.tailscale -servers.deoxys -> network.tailscale -servers.tsuba -> network.tailscale -workstations.ryu -> network.local_network -mobile.deck -> network.tailscale - -servers.mirai -> network.zerotier -workstations.ryu -> network.zerotier - -# Build relationships -workstations.ryu -> builders: Uses distributed builds -mobile.kuro -> builders: Uses distributed builds -servers.mirai -> builders: Build server -workstations.shiro -> builders: Build server - -# Configuration connections -config_mgmt.nixos_flake -> servers.mirai -config_mgmt.nixos_flake -> servers.deoxys -config_mgmt.nixos_flake -> servers.tsuba -config_mgmt.nixos_flake -> workstations.ryu - -config_mgmt.darwin -> mobile.kuro -config_mgmt.darwin -> workstations.shiro - -config_mgmt.home_manager -> mobile.deck - -# Legend -legend: Legend { - near: bottom-right - style.fill: "#f9fafb" - style.stroke: "#6b7280" - - servers_legend: "🖥️ Servers (headless)" { - shape: text - style.font-size: 12 - } - - workstations_legend: "💻 Workstations (GUI)" { - shape: text - style.font-size: 12 - } - - mobile_legend: "📱 Portable/Mobile" { - shape: text - style.font-size: 12 - } - - deploy_legend: "→ SSH Deploy" { - shape: text - style.font-size: 12 - } -} diff --git a/assets/devices-diagram.svg b/assets/devices-diagram.svg deleted file mode 100644 index cbe0aa07..00000000 --- a/assets/devices-diagram.svg +++ /dev/null @@ -1,149 +0,0 @@ -Device Architecture OverviewServer InfrastructureDevelopment WorkstationsPortable DevicesNetwork InfrastructureBuild MachinesConfiguration ManagementLegendmiraiMain Serverx86_64-linuxUser: fs0c131yHeadlessdeoxysVM Serverx86_64-linuxUser: serviusHeadlesstsubaRaspberry Piaarch64-linuxUser: serviusHeadlessryuMain Desktopx86_64-linuxUser: serviusHyprland + GNOMEshiroMac Mini Desktopaarch64-darwinUser: serviusBuild ServerkuroMacBookaarch64-darwinUser: fs0c131ySteamDeckGaming Handheldx86_64-linuxUser: deckHome Manager OnlyTailscale VPNZeroTier NetworkLocal NetworkDistributed Buildsmirai, shiro (+ tsuba)NixOS FlakeHome Managernix-darwin🖥️ Servers (headless)💻 Workstations (GUI)📱 Portable/Mobile→ SSH DeployServices• Nextcloud• Gitea• Grafana• Minecraft• Immich• Paperless• Tailscale• And more...Multi-Monitor SetupHDMI-A-1(Gigabyte FO27Q3)DP-3(Acer XV272U)DP-1(Gigabyte M27Q) SSH DeploySSH DeploySSH Deploy(tsuba.darksailor.dev) SSH DeploySSH Deploy SSH Deploy(steamdeck) Uses distributed buildsUses distributed buildsBuild serverBuild server - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/flake.lock b/flake.lock index 21adc663..978e1102 100644 --- a/flake.lock +++ b/flake.lock @@ -2949,11 +2949,11 @@ }, "nixpkgs_13": { "locked": { - "lastModified": 1764517877, - "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=", + "lastModified": 1762111121, + "narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c", + "rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4", "type": "github" }, "original": { @@ -4554,11 +4554,11 @@ "systems": "systems_26" }, "locked": { - "lastModified": 1764589741, - "narHash": "sha256-RRh/sN/0lzcSc9ZiINOQCx/CrR10fvdt7i/vRAlG6FQ=", + "lastModified": 1765120114, + "narHash": "sha256-OIpOC69I+2rhIvIU2CmDXsKU4BRCouBGPlKx+IYFqOE=", "owner": "vicinaehq", "repo": "vicinae", - "rev": "35523ad27e8949fada3ecf6eed6c317492102fe3", + "rev": "b7391a02592d512ada397841440457b3dc292502", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 350e641d..31152def 100644 --- a/flake.nix +++ b/flake.nix @@ -255,14 +255,6 @@ ... } @ inputs: let devices = { - # mirai = mkDevice { - # name = "mirai"; - # system = "x86_64-linux"; - # user = "fs0c131y"; - # hasGui = false; # Don't wan't to run GUI apps on a headless server - # isNix = true; - # isServer = true; - # }; tako = mkDevice { name = "tako"; system = "x86_64-linux"; diff --git a/nixos/tako/configuration.nix b/nixos/tako/configuration.nix index 7a38e090..b8b281a9 100644 --- a/nixos/tako/configuration.nix +++ b/nixos/tako/configuration.nix @@ -86,7 +86,7 @@ users.groups.media = {}; nixpkgs.config.allowUnfree = true; - networking.hostName = "tako"; # Define your hostname. + networking.hostName = device.name; # Pick only one of the below networking options. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. diff --git a/nixos/tsuba/services/servarr.nix b/nixos/tsuba/services/servarr.nix index c31437c5..4dc7d2a6 100644 --- a/nixos/tsuba/services/servarr.nix +++ b/nixos/tsuba/services/servarr.nix @@ -56,11 +56,11 @@ import auth reverse_proxy localhost:${builtins.toString config.services.bazarr.listenPort} ''; - "prowlarr.tsuba.darksailor.dev".extraConfig = '' - import cloudflare - import auth - reverse_proxy tako.darksailor.dev:9696 - ''; + # "prowlarr.tsuba.darksailor.dev".extraConfig = '' + # import cloudflare + # import auth + # reverse_proxy tako.darksailor.dev:9696 + # ''; }; }; }