macOS Sequoia "No route to Host"
Issue reported on another fork from https://github.com/transmission-remote-gui/transgui/issues/1476
Cannot connect to my servers after upgrade to macOS Sequoia 15.0 - 15.1.1 This problem because Transmission Remote GUI does not appear in local network permission settings.
As an immediate workaround running the app from cli (/Applications/Transmission\ Remote\ GUI.app/Contents/MacOS/transgui) seems to work (because it reuses the permissions from the terminal) and the entry will then appear then in the Security -> Network settings.
This seems to be the reason: https://apple.stackexchange.com/questions/475737/how-can-i-manually-allow-local-network-access-for-an-app
Developers to add new requirement. In the meantime launching the app once from terminal sounds like an acceptable workaround.
In the meantime, users for Sequoia unaware of this issue/workaround/github (the vast majority!) will NOT be able to use the app.
Would be cool to get that added to a new release so macOS Sequoia prompts for this when running it, instead of having to run the app from terminal first.
Thanks.
Thank you. As noted in the readme, macOS isn't my primary platform so I had no idea of this happening. Also, I don't have a Sequoia system to test so will ask you to check if stuff is working correctly.
I can test once something is available to test, thanks.
Okay. Bad news on this one, I'm afraid.
First of all, the resource you linked to describes something that's called "multicast entitlement". According to the linked Apple FAQ post, this is required only if the application does any of this :
Sending a UDP unicast — no Sending a UDP multicast — yes Sending a UDP broadcast — yes Receiving an incoming UDP unicast — no Receiving an incoming UDP multicast — yes Receiving an incoming UDP broadcast — yes
Additionally, some Bonjour operations require the multicast entitlement: Working with arbitrary Bonjour service types — yes Browsing for advertised service types [1] — yes
Transgui does none of those. The only network connection that it opens is a plain, old, boring HTTP (so, TCP) connection to the Transmission daemon. Another FAQ states that :
You should apply for, and then enable, the multicast entitlement (com.apple.developer.networking.multicast) if any of the following apply:
You send or receive multicasts or broadcasts You work with Bonjour service types not declared in the Bonjour service property (NSBonjourServices) You browse for advertised service types
Again, Transgui does none of this. There is no support for Bonjour at all as Transmission does not broadcast its presence this way.
Additionally, even if I wanted to add this "entitlement" to the property list for the application, it most likely would do exactly nothing anyway, as Apple documentation for it states outright :
This entitlement requires permission from Apple before you can use it in your app. Request permission from the Multicast Networking Entitlement Request page.
So I'm pretty sure it isn't the right way to go about this.
The most useful thing I found is Understanding Local Network Privacy but even that doesn't present any straightforward solutions though it does acknowledge that "Making an outgoing TCP connection" triggers a "Local Network Privacy" permission check.
Also leaving here for reference : https://mjtsai.com/blog/2024/10/02/local-network-privacy-on-sequoia/ and https://community.jamf.com/t5/jamf-pro/macos-15-sequoia-pop-up-for-local-network-access/m-p/325888 and https://forums.developer.apple.com/forums/thread/762848 .
worksforme on Sequoia 15.2, even with the "base" transgui version 5.18.0 (not shown below but you'll have to take my word for it)
Attaching a video on what the process looks like to me with a freshly created user (this is crucial as the local network permissions are stored per-user) running transgui for the first time. The initial network request is indeed cancelled with a "No route to host", but subsequent requests work just fine. The application does show up in Privacy & Security > Local Network and turning privileges off reverts back to the network requests returning "No route to host".
https://github.com/user-attachments/assets/8695c464-13b4-4b44-ab62-9e0e6a3a7c68
Either way, I don't think there's anything to be done in Transgui specifically to support this, especially seeing how TN3179 says that there's no way to trigger the alert explicitly and there's no way to check if privileges for "local network access" have been granted. The TN does present a few "best effort" approaches but those are no better than what the application does now.
Maybe the functionality is broken-ish in earlier Sequoia versions. This appears to be too macOS/particular-installation specific so I really cannot offer any actual advice.
For me this has worked fine on 15.3 (using OpenCore Legacy Patcher) -- the app shows up in system settings.