DFSG NEW Queue

DFSG, Licensing & New Packages Team

Review: python-libsoundtouch 0.8.0-1

Package Information

Descriptionlibrary for controlling Bose SoundTouch devices

This library discovers devices on the local network and controls power, playback, volume, presets, and AUX or Bluetooth input selection. It can retrieve track information and device status, play media from HTTP URLs, and save and restore the selected content.

Multi-room support allows devices to be grouped into zones and added to or removed from existing zones. WebSocket notifications provide updates on playback status, volume, presets, and zone membership.

MaintainerHome Assistant Team <team+homeassistant@tracker.debian.org>
Changed ByEdward Betts <edward@4angle.com>
Sponsoredward@debian.org
Distributionunstable
Architectureall
VCSgit: https://salsa.debian.org/homeassistant-team/deps/python-libsoundtouch.git (browse)
Closes#1149343
Trackerhttps://tracker.debian.org/pkg/python-libsoundtouch
Uploaded23 days ago

New Package Report

.changes◂
Version0.8.0-1
Changed-ByEdward Betts <edward@4angle.com>
Architectureall source
Distributionunstable
DateTue, 29 Sep 2026 15:22:00 +0100
Sourcepython-libsoundtouch
Changelog◂
python-libsoundtouch (0.8.0-1) unstable; urgency=medium
 .
   * Initial release. (Closes: #1149343)
.dsc◂
Sectionpython
Priorityoptional
Componentmain
Package-Listpython3-libsoundtouch deb python optional arch=all
debian/copyright◂
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: libsoundtouch
Upstream-Contact: Charles Blonde <charles.blonde@gmail.com>
Source: https://github.com/CharlesBlonde/libsoundtouch

Files: *
Copyright: 2016 Charles Blonde.
License: Apache-2.0

Files: docs/*
Copyright: 2017 Charles Blonde.
License: Apache-2.0

Files: debian/*
Copyright: 2026 Edward Betts <edward@4angle.com>
License: Apache-2.0


License: Apache-2.0
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at
 .
      http://www.apache.org/licenses/LICENSE-2.0
 .
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 .
 On Debian systems, the complete text of the Apache 2.0 License
 can be found in /usr/share/common-licenses/Apache-2.0 file.

Review Information

accepted — allocated to awm 21 days ago, started 21 days ago, completed 21 days ago.

Final Comment

Hi,

Th epackage is accepted, but there are a few pedantic packaging quality issues

  1. nodoc build profile is declared but not honoured in debian/rules

debian/control guards the Sphinx/doc build-deps with (python3-sphinx, python3-requests, python3-websocket, python3-zeroconf), but override_dh_auto_build in debian/rules:7-10 runs dh_doc_privacy and sphinx-build unconditionally. Building with the nodoc profile (DPKG_BUILD_PROFILES=nodoc) would therefore try to invoke Sphinx even though python3-sphinx is not installed, and fail. The Sphinx build and dh_doc_privacy should be guarded with $(filter nodoc,$(DEB_BUILD_PROFILES)).

  1. dh_doc_privacy is run on source before building, so it likely misses the shipped HTML

debian/rules:9 runs dh_doc_privacy README.md docs against the source tree, before sphinx-build. The privacy-violating content that matters is in the generated HTML: the remote ghbtns.com iframe in docs/_templates/sidebarintro.html:2 (copied verbatim into the built page) and the remote Travis/Coveralls/PyPI badge image:: directives in docs/index.rst:9-16. Since Sphinx re-embeds these into _build/html, sanitizing the source .rst/template beforehand won't reliably clean the shipped docs. dh_doc_privacy is normally a debhelper sequence step operating on the built docs.

  1. Redundant/conflicting docs installation

debian/python3-libsoundtouch.docs:2 lists docs/_build/html, while dh-sequence-sphinxdoc (debian/control:11) is also enabled. dh_sphinxdoc installs the Sphinx HTML output to /usr/share/doc/python3-libsoundtouch/html and registers it with doc-base itself, so the same tree is being installed twice via two mechanisms. This should be one or the other.

  1. dh_auto_build $@ --buildsystem=pybuild passes the target name to the build system

In debian/rules:8, $@ expands to override_dh_auto_build inside the override, so the literal string override_dh_auto_build is passed as a positional argument into the pybuild/setup.py command line. The standard form is dh_auto_build --buildsystem=pybuild with no $@.

  1. Empty From: header in the combined patch

debian/patches/dgit-changes:1 has From: with no value. It's the expected dgit single-debian-patch artifact, but the empty author line is sloppy and could confuse tooling.

Hope this is helpful :-)

Thanks!

Back to Dashboard | View all reviews for this package