Server Version#: 1.41.6.9606-aa6577194
Player Version#:
Tuner Make/Model: HDHomeRun
Plex Tuner Service Triggers Repeated macOS Local Network Access Prompts Due to Missing Info.plist Key
Issue Summary:
On macOS 15.3.2 (Sequoia), Plex repeatedly prompts the user with the message:
“Allow ‘Plex Media Serv’ to find and connect to devices on your local network?”
This occurs despite having previously allowed access.
The root cause appears to be a missing NSLocalNetworkUsageDescription key in the main app bundle’s Info.plist. Without this key, macOS will not persist the user’s response, even if the binary is properly signed.
User Impact:
- When the prompt is displayed and not yet accepted, the HDHomeRun tuner is reported as “device not found” in the Plex Live TV & DVR settings.
- During this time:
- All scheduled recordings fail.
- Live TV streaming fails
- Accepting the prompt restores functionality, but the issue reappears reliably, user after 1-2 days.
Repro Steps:
- Install Plex Media Server on macOS Sequoia (15.3.2).
- Set up Live TV with an HDHomeRun tuner.
- Initiate a channel scan, watch live TV, or trigger a recording.
- Observe the system prompt requesting local network access.
- Accept the prompt; functionality returns.
- Wait or reboot. The same prompt will eventually return, repeating the disruption.
Technical Findings:
- The responsible binary is
/Applications/Plex Media Server.app/Contents/MacOS/Plex Tuner Service, which is correctly signed and notarized under Developer IDK4QJ56KR4A. - However, the enclosing app bundle lacks:
xml
CopyEdit
<key>NSLocalNetworkUsageDescription</key>
<string>Plex needs access to discover devices on your local network, like your HDHomeRun tuner.</string>
- This key is mandatory under modern macOS privacy rules for TCC (Transparency, Consent, and Control) to persist user approval of local network usage.
Expected Behavior:
- macOS prompts once for local network access.
- User approval is stored, and Plex accesses network devices like HDHomeRun without further interruption.
Actual Behavior:
- Prompt recurs regularly, breaking functionality until manually approved again.
Suggested Fix:
Add NSLocalNetworkUsageDescription to Info.plist for the main app bundle. This is a required entitlement for apps requesting LocalNetwork access and enables macOS to store consent.