mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-06-17 02:05:22 -04:00
Add launchd LaunchAgent for macOS (systemd equivalent)
com.odysseus.ui.plist + install-service-macos.sh run Odysseus at login and restart on crash, the macOS counterpart to odysseus-ui.service. The installer auto-fills paths from the venv, so there's no hand-editing. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
<?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">
|
||||
<!--
|
||||
macOS launchd equivalent of odysseus-ui.service (systemd).
|
||||
|
||||
Do not edit the __PLACEHOLDERS__ by hand — run ./install-service-macos.sh,
|
||||
which fills them in from your venv/install path and loads the agent. This is
|
||||
a per-user LaunchAgent: it runs at login, needs no sudo, and restarts the
|
||||
server if it crashes (KeepAlive). The app reads .env itself via python-dotenv,
|
||||
so there's no EnvironmentFile to wire up.
|
||||
-->
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>com.odysseus.ui</string>
|
||||
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>__UVICORN__</string>
|
||||
<string>app:app</string>
|
||||
<string>--host</string>
|
||||
<string>__HOST__</string>
|
||||
<string>--port</string>
|
||||
<string>__PORT__</string>
|
||||
</array>
|
||||
|
||||
<key>WorkingDirectory</key>
|
||||
<string>__WORKDIR__</string>
|
||||
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
|
||||
<!-- Restart on crash (systemd Restart=always equivalent). -->
|
||||
<key>KeepAlive</key>
|
||||
<true/>
|
||||
|
||||
<key>StandardOutPath</key>
|
||||
<string>__LOGDIR__/odysseus.out.log</string>
|
||||
<key>StandardErrorPath</key>
|
||||
<string>__LOGDIR__/odysseus.err.log</string>
|
||||
</dict>
|
||||
</plist>
|
||||
Reference in New Issue
Block a user