- Fix database update service to include config path parameter - Move ConditionACPower from [Timer] to [Unit] section in timer config - Add database directory to ReadWritePaths in main service - Set explicit database path in Debian package config template - Simplify postinst script to be quiet and use consistent skyview-adsb user - Update README.Debian with comprehensive systemd service documentation - Remove confusing dual-user setup in favor of single skyview-adsb user SystemD Configuration Summary: - Main service: skyview-adsb.service with database pre-update - Database service: skyview-database-update.service (oneshot) - Weekly timer: skyview-database-update.timer (Sunday 3AM with randomization) - All services use skyview-adsb user consistently - Database path: /var/lib/skyview-adsb/skyview.db - Config path: /etc/skyview-adsb/config.json 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
50 lines
No EOL
1.2 KiB
Desktop File
50 lines
No EOL
1.2 KiB
Desktop File
[Unit]
|
|
Description=SkyView Multi-Source ADS-B Aircraft Tracker
|
|
Documentation=https://github.com/skyview/skyview
|
|
After=network.target
|
|
Wants=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=skyview-adsb
|
|
Group=skyview-adsb
|
|
# Update database before starting main service
|
|
ExecStartPre=/usr/bin/skyview-data -config /etc/skyview-adsb/config.json update
|
|
TimeoutStartSec=300
|
|
ExecStart=/usr/bin/skyview -config /etc/skyview-adsb/config.json
|
|
WorkingDirectory=/var/lib/skyview-adsb
|
|
StandardOutput=journal
|
|
StandardError=journal
|
|
SyslogIdentifier=skyview-adsb
|
|
Restart=always
|
|
RestartSec=5
|
|
|
|
# Security settings
|
|
NoNewPrivileges=true
|
|
ProtectSystem=strict
|
|
ProtectHome=true
|
|
PrivateTmp=true
|
|
PrivateDevices=true
|
|
ProtectHostname=true
|
|
ProtectClock=true
|
|
ProtectKernelTunables=true
|
|
ProtectKernelModules=true
|
|
ProtectKernelLogs=true
|
|
ProtectControlGroups=true
|
|
RestrictRealtime=true
|
|
RestrictSUIDSGID=true
|
|
RemoveIPC=true
|
|
RestrictNamespaces=true
|
|
|
|
# Allow network access
|
|
PrivateNetwork=false
|
|
|
|
# Allow writing to log and database directories
|
|
ReadWritePaths=/var/log/skyview-adsb /var/lib/skyview-adsb
|
|
|
|
# Capabilities
|
|
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
|
|
AmbientCapabilities=CAP_NET_BIND_SERVICE
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target |