diff --git a/hosts/detritus/filesystems/default.nix b/hosts/detritus/filesystems/default.nix index 26ed32b1..86a993b3 100644 --- a/hosts/detritus/filesystems/default.nix +++ b/hosts/detritus/filesystems/default.nix @@ -1,6 +1,7 @@ { config, ... }: { fileSystems = with config.services.mycelium.ips; { + # Local mounts "/persist/storage" = { device = "/dev/disk/by-uuid/d0d6783f-ad51-4d85-b8a9-3374f6460ef6"; fsType = "btrfs"; diff --git a/hosts/jupiter/filesystems/default.nix b/hosts/jupiter/filesystems/default.nix index 7c1feb2d..3ad7e4eb 100644 --- a/hosts/jupiter/filesystems/default.nix +++ b/hosts/jupiter/filesystems/default.nix @@ -1,11 +1,43 @@ { config, ... }: { - fileSystems."/mnt/Games" = { - device = "/dev/disk/by-uuid/cb109a85-846d-4417-9c50-a2279bd20803"; - fsType = "btrfs"; - options = [ - "nofail" - "nosuid" - ]; + fileSystems = { + # Local mounts + "/mnt/Games" = { + device = "/dev/disk/by-uuid/cb109a85-846d-4417-9c50-a2279bd20803"; + fsType = "btrfs"; + options = [ + "nofail" + "nosuid" + ]; + }; + + # Network mounts + "/home/${config.sysusers.main}/Network/Midas" = { + device = "[${midas}]:/storage"; + fsType = "nfs4"; + options = [ + "noauto" + "soft" + "x-systemd.automount" + ]; + }; + "/home/${config.sysusers.main}/Network/Kitty" = { + device = "[${kitty}]:/storage/bun"; + fsType = "nfs4"; + options = [ + "noauto" + "soft" + "x-systemd.automount" + ]; + }; + "/home/${config.sysusers.main}/Network/Prophet" = { + device = "[${prophet}]:/storage"; + fsType = "nfs4"; + options = [ + "noauto" + "soft" + "x-systemd.automount" + ]; + }; }; } diff --git a/modules/home/programs/terminal/ssh/default.nix b/modules/home/programs/terminal/ssh/default.nix index 59fe0019..4ac3a562 100644 --- a/modules/home/programs/terminal/ssh/default.nix +++ b/modules/home/programs/terminal/ssh/default.nix @@ -7,6 +7,7 @@ matchBlocks = { # Personal servers tower.hostname = "577:84d1:b682:9ac3:b987:b78e:33d9:2060"; + jupiter.hostname = "5ce:969c:40d1:9575:f5e:591d:c377:a20b"; midas.hostname = "538:e163:87ba:f847:3646:18b6:6b01:d8f8"; kitty.hostname = "53f:dc2d:80c9:3ca2:4b15:ef4d:38a0:c868"; prophet.hostname = "42f:2737:2aed:4dee:cbe4:3c73:1918:ad9b"; diff --git a/modules/system/devices/networking/default.nix b/modules/system/devices/networking/default.nix index 5ac70401..aed59229 100644 --- a/modules/system/devices/networking/default.nix +++ b/modules/system/devices/networking/default.nix @@ -17,4 +17,9 @@ enable = config.networking.useNetworkd; dnsovertls = "true"; }; + + systemd = { + services.NetworkManager-wait-online.enable = false; + network.wait-online.enable = false; + }; } diff --git a/modules/system/devices/networking/mycelium/ips/default.nix b/modules/system/devices/networking/mycelium/ips/default.nix index 30b625f7..18f9bd6e 100644 --- a/modules/system/devices/networking/mycelium/ips/default.nix +++ b/modules/system/devices/networking/mycelium/ips/default.nix @@ -6,6 +6,7 @@ config.services.mycelium.ips = { tower = "577:84d1:b682:9ac3:b987:b78e:33d9:2060"; + jupiter = "5ce:969c:40d1:9575:f5e:591d:c377:a20b"; midas = "538:e163:87ba:f847:3646:18b6:6b01:d8f8"; kitty = "53f:dc2d:80c9:3ca2:4b15:ef4d:38a0:c868"; prophet = "42f:2737:2aed:4dee:cbe4:3c73:1918:ad9b"; diff --git a/modules/system/services/server/nfs/default.nix b/modules/system/services/server/nfs/default.nix index 4457c434..c71175c1 100644 --- a/modules/system/services/server/nfs/default.nix +++ b/modules/system/services/server/nfs/default.nix @@ -5,7 +5,7 @@ config = lib.mkIf config.services.nfs.server.enable { services.nfs.server.exports = "/storage *(rw)"; networking.firewall.extraInputRules = with config.services.mycelium.ips; '' - ip6 saddr { ${tower}, ${midas}, ${kitty}, ${prophet} } tcp dport 2049 accept + ip6 saddr { ${tower}, ${jupiter}, ${midas}, ${kitty}, ${prophet} } tcp dport 2049 accept ''; }; } diff --git a/modules/system/services/server/nginx/rtmp/default.nix b/modules/system/services/server/nginx/rtmp/default.nix index faa91cf8..ca389beb 100644 --- a/modules/system/services/server/nginx/rtmp/default.nix +++ b/modules/system/services/server/nginx/rtmp/default.nix @@ -24,7 +24,7 @@ ''; }; networking.firewall.extraInputRules = with config.services.mycelium.ips; '' - ip6 saddr ${tower} tcp dport 1935 accept + ip6 saddr { ${tower}, ${jupiter} } tcp dport 1935 accept ip saddr { ${config.secrets.ips.luna}, ${config.secrets.ips.corn} } tcp dport 1935 accept ''; systemd.services.nginx.serviceConfig.ReadWritePaths = [ "/var/www/landing-page/streams/hls/" ]; diff --git a/modules/system/services/server/owncast/default.nix b/modules/system/services/server/owncast/default.nix index d689b718..4696fe89 100644 --- a/modules/system/services/server/owncast/default.nix +++ b/modules/system/services/server/owncast/default.nix @@ -8,7 +8,7 @@ rtmp-port = 1945; }; networking.firewall.extraInputRules = with config.services.mycelium.ips; '' - ip6 saddr ${tower} tcp dport 1935 accept + ip6 saddr { ${tower}, ${jupiter} } tcp dport 1935 accept ''; environment.persistence."/persist".directories = [ "/var/lib/owncast" ]; };