Bug#583916: Upcoming jack transition

Reinhard Tartler siretart at debian.org
Mon May 31 16:39:11 UTC 2010


Package: release.debian.org

Dear Release Team,

We, the pkg-multimedia team, would like to announce our intent to start
a (new) jack transition. This includes a new upload of the package
'jack-audio-connection-kit', which provides the packages "libjack0" and
"libjack-dev".

Details follow:

There are several implementations of the jack audio connection kit.
Besides the version which was included in Debian Lenny ('jackd'), there
are also a number of different other implementations that partly offer a
number of additional and (in our opinion) important features. All newer
jack implementations are intended to be binary-compatible drop-in
replacements for the original jackd.

The last transition switched the jack-audio-connection-kit package
from 'jackd' to 'jackd2'. 'jackd2' is a complete reimplementation of
jackd in C++ with SMP support. Most importantly however, is an added
feature that improves interoperability with pulseaudio.  For this
reason, we decided to make this version the default version for Squeeze.

During testing, however, we discovered that this transition has been and
still is a bit problematic.  Besides some more or less known bugs in
'jackd2', it exposes a lot of additional (internal, C++ only) symbols,
with which we are not comfortable at all.  Moreover, we have been
approached by upstream(s) with concerns that our current package does
not make it easy for 3rd parties (may it be upstream or backports.org)    
to provide replacement packages for other jackd implementations.

For this reason, we propose to:

 - revert the 'jack-audio-connection-kit' package to the jackd1
   implementation

 - make this package the provider of libjack-dev, however the actual
   daemon will be packaged as 'jackd1' (currently jackd)

 - create a shlibs file that makes application packages depend on
   'libjack0-0.116 | libjack0-0.118+svn3796 (>= 1:0.0116)' (or similar).
   This effectively defines a new virtual package 'libjack0-0.116' that
   is provided by any jack implementation that claims to be binary 
   compatible with the 0.116 release of the original jack
   implementation.

 - have all packages that are linked against libjack recompiled to pick
   up the new shlibs

 - introduce the jackd2 implementation as a new source package 'jackd2'.
   The binary package name of this jack daemon will be 'jackd2', the
   library package will be 'libjack-jackd2-0' and (of course also)
   provide 'libjack0-0.116'.

 - introduce a new source package 'jackd-defaults' that generates a meta
   package 'jackd' which points to the default jack implementation,
   which will be jackd2 for Debian.


This creates the situation that we actually partially revert the last
transition.  However, we still consider jackd2 as the superior
implementation for squeeze, so we need to introduce a new virtual
package for the libjack0 library. We expect the actual rebuilds to be
rather smooth, since the jackd1 implementation was tested extensively in
Lenny and Squeeze.

It appears that 93 source packages will need to be binNMUd as part of 
this transition.

We know that this is very very late for squeeze for which we apologize,
but hope that it's not too late yet.  Please give us a timeframe when we
can start this transition with a new 'jack-audio-connection-kit' upload.

On behalf of the pkg-multimedia team,
Reinhard Tartler

-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4





More information about the pkg-multimedia-maintainers mailing list