← back to Mp3 Agentabrams
launchd/com.steve.mp3-agentabrams-tailscale-bridge.plist
53 lines
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!--
com.steve.mp3-agentabrams-tailscale-bridge
Mirrors the same pattern as com.steve.ollama-tailscale-bridge: bind socat on
the Tailscale IP and forward to the loopback server. Lets devices on the
tailnet (e.g. Steve's iPhone in Tucson) reach the mp3 catalog without
exposing it to the home LAN or the public internet.
OPT-IN:
cp launchd/com.steve.mp3-agentabrams-tailscale-bridge.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/com.steve.mp3-agentabrams-tailscale-bridge.plist
To disable:
launchctl unload -w ~/Library/LaunchAgents/com.steve.mp3-agentabrams-tailscale-bridge.plist
rm ~/Library/LaunchAgents/com.steve.mp3-agentabrams-tailscale-bridge.plist
CHECK if Mac2's Tailscale IP ever changes:
tailscale ip -4
If the IP differs from 100.65.187.120, update bind= below.
-->
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.steve.mp3-agentabrams-tailscale-bridge</string>
<key>ProgramArguments</key>
<array>
<string>/opt/homebrew/bin/socat</string>
<string>TCP-LISTEN:9696,bind=100.65.187.120,fork,reuseaddr</string>
<string>TCP:127.0.0.1:9696</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>/Users/macstudio3/Projects/mp3-agentabrams/logs/socat.stdout.log</string>
<key>StandardErrorPath</key>
<string>/Users/macstudio3/Projects/mp3-agentabrams/logs/socat.stderr.log</string>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
</dict>
</plist>