Fix empty Bluetooth lists in web mixer; advertise it over Bonjour

busctl cannot convert some BlueZ advertisement data (Apple
ManufacturerData, a{qv}) to JSON, so GetManagedObjects failed as soon as
an iPad was paired and the web showed no devices at all. Read only the
needed Device1/Adapter1 properties per object instead. Also publish the
web mixer as an _http._tcp Avahi service.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jsahn
2026-10-12 21:54:38 +09:00
co-authored by Claude Opus 5.5
parent 5e8906b43d
commit 7fa372e801
5 changed files with 63 additions and 8 deletions
+14
View File
@@ -22,6 +22,20 @@ NoNewPrivileges=true
[Install]
WantedBy=multi-user.target
UNIT
# Advertise the web mixer over Bonjour/mDNS (_http._tcp) next to HOSTNAME.local.
install -d -m 755 /etc/avahi/services
cat > /etc/avahi/services/radxa-mixer.service <<'AVAHI'
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">Radxa Mixer (%h)</name>
<service>
<type>_http._tcp</type>
<port>80</port>
<txt-record>path=/</txt-record>
</service>
</service-group>
AVAHI
systemctl daemon-reload
systemctl enable --now radxa-mixer-web
systemctl restart radxa-mixer-web