[object Object]

← back to Exo

re enable the evil network script (#1277)

d93db3d6bfe8548f1250699f16fc0cd49feec7f6 · 2026-01-24 13:36:06 +0000 · Evan Quiney

seems like we still need the interfaces to be routable for mdns. at
least we're not dependent on this behaviour anymore.

Files touched

Diff

commit d93db3d6bfe8548f1250699f16fc0cd49feec7f6
Author: Evan Quiney <evanev7@gmail.com>
Date:   Sat Jan 24 13:36:06 2026 +0000

    re enable the evil network script (#1277)
    
    seems like we still need the interfaces to be routable for mdns. at
    least we're not dependent on this behaviour anymore.
---
 app/EXO/EXO/Services/NetworkSetupHelper.swift | 29 +++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/app/EXO/EXO/Services/NetworkSetupHelper.swift b/app/EXO/EXO/Services/NetworkSetupHelper.swift
index f5b8ad1c..27d98582 100644
--- a/app/EXO/EXO/Services/NetworkSetupHelper.swift
+++ b/app/EXO/EXO/Services/NetworkSetupHelper.swift
@@ -31,6 +31,35 @@ enum NetworkSetupHelper {
         # Remove Thunderbolt Bridge from VirtualNetworkInterfaces in preferences.plist
         /usr/libexec/PlistBuddy -c "Delete :VirtualNetworkInterfaces:Bridge:bridge0" "$PREFS" 2>/dev/null || true
 
+        networksetup -listlocations | grep -q exo || {
+          networksetup -createlocation exo
+        }
+
+        networksetup -switchtolocation exo
+        networksetup -listallhardwareports \\
+          | awk -F': ' '/Hardware Port: / {print $2}' \\
+          | while IFS=":" read -r name; do
+              case "$name" in
+                "Ethernet Adapter"*)
+                        ;;
+                "Thunderbolt Bridge")
+                        ;;
+                "Thunderbolt "*)
+                  networksetup -listallnetworkservices \\
+                    | grep -q "EXO $name" \\
+                      || networksetup -createnetworkservice "EXO $name" "$name" 2>/dev/null \\
+                      || continue
+                  networksetup -setdhcp "EXO $name"
+                        ;;
+                *)
+                  networksetup -listallnetworkservices \\
+                    | grep -q "$name" \\
+                      || networksetup -createnetworkservice "$name" "$name" 2>/dev/null \\
+                      || continue
+                        ;;
+              esac
+            done
+
         networksetup -listnetworkservices | grep -q "Thunderbolt Bridge" && {
           networksetup -setnetworkserviceenabled "Thunderbolt Bridge" off
         } || true

← ff4a2022 Revert state compaction (#1259) (#1275)  ·  back to Exo  ·  dashboard: fix prettier-svelte rebuilding on every file chan 1290e8ed →