# Put this into /etc/systemd/system/musicmouse.service # # Assumes the repo is checked out at /opt/musicmouse with a venv at /opt/musicmouse/.venv: # /opt/musicmouse/.venv/bin/pip install -e /opt/musicmouse/python-backend # # A dropped serial link is now handled in-process (SerialLink reconnects), so # Restart=always is only for genuine crashes. [Unit] Description=Music Mouse RFID Music Player After=multi-user.target sound.target network-online.target Wants=network-online.target [Service] Type=simple Restart=always RestartSec=5 WorkingDirectory=/opt/musicmouse/python-backend ExecStart=/opt/musicmouse/.venv/bin/python -m musicmouse --config /media/musicmouse/config.yml StandardOutput=journal StandardError=journal [Install] WantedBy=multi-user.target