Package: sonic-pi-server Version: 4.6.0~repack3-2 Severity: grave Tags: patch Justification: renders package unusable
Dear Maintainer, Since sonic-pi-server makes symbolic links to some subdirectories in /usr/lib/erlang/lib directory for its Tau server, it is bound to break on every upstream release of Erlang. Currently, it is broken in unstable, and only autopkgtests prevent Erlang 29.0.3 to migrate to testing, which would cause breackage there. I suggest to make the dependencies of sonic-pi-server on erlang-base more strict, and add an upper limit of the required version (it looks like erlang-base (<< 1:29.0.3+dfsg+) with added "+" at the end, see the attached patch for the detail). And since erlang-depends does not provide such a limit automatically (it seems to be a fairly unusual requirement, all the other packages happily work with the newer Erlang versions), I've constructed it in debian/rules using grep-status from the dctrl-tools package) in the patch. After that, sonic-pi will still require binary-only NMU to adapt to the new Erlang version, but at least it will not break any existing installation in unstable (Erlang packages will refuse to be upgraded for those with sonic-pi-server installed). If it is okay to you and you approve the patch, I can do NMU to incorporate it. -- System Information: Debian Release: 13.6 APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'stable-debug'), (500, 'proposed-updates'), (500, 'oldstable-security'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental'), (1, 'unstable') Architecture: amd64 (x86_64) Foreign Architectures: i386, arm64 Kernel: Linux 6.12.95+deb13-amd64 (SMP w/24 CPU threads; PREEMPT) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) Versions of packages sonic-pi-server depends on: ii erlang-asn1 1:27.3.4.1+dfsg-1+deb13u2 ii erlang-base 1:27.3.4.1+dfsg-1+deb13u2 ii erlang-crypto 1:27.3.4.1+dfsg-1+deb13u2 ii erlang-inets 1:27.3.4.1+dfsg-1+deb13u2 ii erlang-public-key 1:27.3.4.1+dfsg-1+deb13u2 ii erlang-runtime-tools 1:27.3.4.1+dfsg-1+deb13u2 ii erlang-ssl 1:27.3.4.1+dfsg-1+deb13u2 pn jack-example-tools <none> pn jackd <none> ii libc6 2.41-12+deb13u4 ii libfmt10 10.1.1+ds1-4 ii libgcc-s1 14.2.0-19 pn librtmidi7 <none> ii libstdc++6 14.2.0-19 pn osmid <none> ii pipewire-bin 1.4.2-1 ii pipewire-jack 1.4.2-1 ii ruby 1:3.3+b1 pn ruby-activesupport <none> pn ruby-aubio <none> pn ruby-hamster <none> ii ruby-kramdown 2.5.1-1 pn ruby-memoist <none> pn ruby-multi-json <none> pn ruby-rubame <none> pn ruby-rugged <none> pn ruby-sys-proctable <none> pn ruby-tomlrb <none> pn ruby-treetop <none> pn ruby-wavefile <none> pn sc3-plugins-server <none> pn sonic-pi-samples <none> ii sox 14.4.2+git20190427-5+b3 pn supercollider-server <none> Versions of packages sonic-pi-server recommends: ii pipewire-jack 1.4.2-1 Versions of packages sonic-pi-server suggests: pn sonic-pi-server-doc <none>
diff -Nru sonic-pi-4.6.0~repack3/debian/changelog sonic-pi-4.6.0~repack3/debian/changelog --- sonic-pi-4.6.0~repack3/debian/changelog 2026-06-18 00:27:23.000000000 +0300 +++ sonic-pi-4.6.0~repack3/debian/changelog 2026-07-15 16:42:20.000000000 +0300 @@ -1,3 +1,9 @@ +sonic-pi (4.6.0~repack3-3) unstable; urgency=medium + + * Actually depend on specific erlang version + + -- Sergei Golovan <[email protected]> Wed, 15 Jul 2026 16:42:20 +0300 + sonic-pi (4.6.0~repack3-2) unstable; urgency=medium * Depend on specific erlang version diff -Nru sonic-pi-4.6.0~repack3/debian/control sonic-pi-4.6.0~repack3/debian/control --- sonic-pi-4.6.0~repack3/debian/control 2026-06-17 23:58:15.000000000 +0300 +++ sonic-pi-4.6.0~repack3/debian/control 2026-07-15 16:42:20.000000000 +0300 @@ -49,6 +49,7 @@ ruby-rugged, ruby-wavefile (>= 0.6.0-2), sc3-plugins-server, + dctrl-tools, Standards-Version: 4.7.4 Homepage: https://sonic-pi.net/ Vcs-Browser: https://salsa.debian.org/multimedia-team/sonic-pi @@ -74,6 +75,7 @@ ${misc:Depends}, ${erlang-asn1:Depends}, ${erlang-base:Depends}, + ${erlang-base:UpperBound}, ${erlang-crypto:Depends}, ${erlang-inets:Depends}, ${erlang-public-key:Depends}, diff -Nru sonic-pi-4.6.0~repack3/debian/rules sonic-pi-4.6.0~repack3/debian/rules --- sonic-pi-4.6.0~repack3/debian/rules 2026-06-17 23:58:15.000000000 +0300 +++ sonic-pi-4.6.0~repack3/debian/rules 2026-07-15 16:42:20.000000000 +0300 @@ -7,6 +7,8 @@ # Erlang gregorian seconds = Unix seconds + seconds from year 0 to 1970 ERLANG_EPOCH := $(shell expr $(SOURCE_DATE_EPOCH) + 62167219200) +ERLANG_UPPER_BOUND := $(shell grep-status -s Version -PX erlang-base |sed -e 's/Version:\s\+\(.*\)-.*/\1+/') + %: dh $@ --buildsystem=cmake --sourcedirectory=app --builddirectory=app @@ -65,6 +67,9 @@ dh_shlibdeps erlang-depends +override_dh_gencontrol: + dh_gencontrol -- -Verlang-base:UpperBound='erlang-base (<< $(ERLANG_UPPER_BOUND))' + override_dh_auto_test: ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) cd app/server/ruby/test && \

