Fix postinst script: set ownership before setcap

- Move chown -R before setcap to preserve Bluetooth capabilities
- setcap must be applied after ownership is set, not before
- Ensures Python executable has proper Bluetooth permissions for venv
This commit is contained in:
2025-12-28 00:29:18 +01:00
parent aeef9a424c
commit 3e759d30ed

8
debian/postinst vendored
View File

@@ -56,7 +56,10 @@ case "$1" in
exit 1
fi
# Set Bluetooth capabilities on Python executable
# Set ownership of application directory BEFORE setting capabilities
chown -R sensorpajen:sensorpajen /opt/sensorpajen
# Set Bluetooth capabilities on Python executable (after ownership change)
PYTHON_PATH=$(readlink -f /opt/sensorpajen/venv/bin/python3)
if command -v setcap >/dev/null 2>&1; then
setcap cap_net_raw,cap_net_admin+eip "$PYTHON_PATH" || {
@@ -67,9 +70,6 @@ case "$1" in
echo "Warning: setcap not found (install libcap2-bin package)"
fi
# Set ownership of application directory
chown -R sensorpajen:sensorpajen /opt/sensorpajen
# Install systemd service file
if [ -f /opt/sensorpajen/debian/sensorpajen.service ]; then
cp /opt/sensorpajen/debian/sensorpajen.service /etc/systemd/system/