As part of the Ansible to Debian refactoring, we should replace our Ansible-based install of the uStreamer systemd service to an install that uses Debian packaging.
We have ported several other systemd services from Ansible to Debian, so we know generally what this process looks like. Our previous experience with this:
Porting the usb-gadget service from Ansible to Debian
Here, I'd like to move the uStreamer service install to the TinyPilot Debian package.
Normally, the service would be part of the same package as the binary, but in this case, we want the uStreamer service in the TinyPilot Debian package for a few reasons:
It's easier to have more code in the TinyPilot monorepo than to straddle changes across the TinyPilot repo and the ustreamer-debian repo.
The systemd service is not a native part of uStreamer but rather a TinyPilot-specific service + wrapper script that we created.
Follow these steps to implement the change and verify that it works as expected:
As part of the Ansible to Debian refactoring, we should replace our Ansible-based install of the uStreamer systemd service to an install that uses Debian packaging.
We have ported several other systemd services from Ansible to Debian, so we know generally what this process looks like. Our previous experience with this:
Here, I'd like to move the uStreamer service install to the TinyPilot Debian package.
Normally, the service would be part of the same package as the binary, but in this case, we want the uStreamer service in the TinyPilot Debian package for a few reasons:
Follow these steps to implement the change and verify that it works as expected:
launch
scriptreload systemd config
handler and any lines that refer to it (e.g., this one)restart uStreamer
handler and any lines that refer to it.ansible-role-ustreamer/files/launch
todebian-pkg/opt/ustreamer-launcher/launch
ansible-role-ustreamer/files/ustreamer.service
todebian-pkg/debian/tinypilot.ustreamer.service
override_dh_installsystemd
section ofrules
for theustreamer
service likedh_installsystemd --name=ustreamer