MainInclusionReportJACK

Differences between revisions 11 and 27 (spanning 16 versions)
Revision 11 as of 2009-09-09 17:46:27
Size: 4310
Editor: 17
Comment:
Revision 27 as of 2010-03-16 12:37:56
Size: 7160
Editor: 189
Comment: Links to debian were wrong(jack is another program to rip CDs). Links to upstream were wrong. Comments related to them need to be changed accordingly.
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
  * Build dependency of the 'jack' alsa plugin (now disabled in libasound2-plugins, see launchpad bugs [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/197957|197957]] and [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/84900|84900]])
  * ...
  * Many bugs have been filed against various source packages currently in Main (xine, alsa-plugins, portaudio, pulseaudio) requesting that the JACK bridge/plugin/output/etc. be turned on or compiled into the package - this is not possible without the inclusion of Jack in Main. See bugs: [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/197957|197957]], [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/84900|84900]], [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/152487|152487]], [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/109659|109659]], [[https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/360590|360590]]. This may not be a complete list, and duplicates of most of these have been triaged.
  * The libffado drivers for firewire soundcards ( http://www.ffado.org ) are only supported by the Jack driver. This makes these common, pro, semi-pro, and hobbyist audio cards inaccessible for most applications without the previous audio server bridges/plugins/outputs to jack available. Owners of these cards must recompile major audio drivers in order to get even basic playback working.
  * Jack is an audio server designed specifically for professional, reliable audio signals. This is not a duplicate server clogging up the "audio mess", which some people believe exists in Linux; it is a specialty tool for musicians, audio engineers, and anyone using Linux for professional audio. (In fact if anything, allowing the aforementioned bugs to get fixed would clean up a large chunk of the "audio mess" which some believe exists. It would at least stop a large segment of people from griping so loudly about and attempting to remove PulseAudio.)
  * shrinking the Ubuntu source package delta to Debian's
  * enabling the JACK backend for PulseAudio to improve the experience of people who want PA<->JACK functionality
Line 12: Line 15:
  * Only binaries in ''jackd'', none of which are suid/sgid. Note: realtime capabilities are nowadays granted to users/groups though /etc/security/limits.conf
  * jackd is of course a daemon, but is not automatically started on startup
  * jackd does not listen for network connections itself - it requires the installation of a separately available 'netjack' driver for this.
  * Only binaries in ''jackd'', none of which are suid/sgid. Note: realtime capabilities are nowadays granted to users/groups though PAM, /etc/security/limits.conf
  * jackd is a daemon but is not automatically started on startup
  * jackd does not listen for network connections itself. That functionality requires the manual installation of a separately available 'netjack' driver.
Line 20: Line 23:
  * Does the package ask any debconf questions highter than priority 'medium'?
   * Jack does not ask any debconf questions.
  * Debian bugs: [[http://bugs.debian.org/src:jack|only wishlist items are open right now]]
  * Does the package ask any debconf questions higher than priority 'medium'?
   * No. Specifically, Jack's postinst maintainer script asks if a PAM configuration file to enable realtime priority should be written, and its postrm maintainer script cleans it accordingly.
  * Debian bugs: [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=jack-audio-connection-kit|normal bugs have patches]]
Line 25: Line 28:
  * Upstream bug tracker: [[http://trac.jackaudio.org/jack/|nothing particularly relevant or critical there either it seems]]
  * Hardware: This package deals well with most commonly available consumer and semi- and professional audio cards.
  * Is there a test stuie in the upstream source or packaging?
  * Is it enabled to run in the build?
  * Upstream bug tracker: [[http://trac.jackaudio.org/report/1/|nothing particularly relevant or critical there either it seems]]
  * Hardware: '''This package deals well with most commonly available consumer, semi- and professional audio cards.'''
  * Is there a test suite in the upstream source or packaging? '''No'''
  * Is it enabled to run in the build? '''N/A'''
Line 30: Line 33:
  * User-visible strings are internationalized using standard gettext system ?
  * Package with translatable strings builds a PO template during package build ?
  * End-user applications ship a desktop file ?
  * User-visible strings are internationalized using standard gettext system ? '''Yes'''
  * Package with translatable strings builds a PO template during package build ? '''Yes'''
  * End-user applications ship a desktop file ? '''Yes'''
Line 34: Line 37:
  * [[http://www.pathname.com/fhs/|FHS]], [[http://www.de.debian.org/doc/debian-policy/|Debian Policy]] compliance ?
  * [[http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html|Debian library packaging guide]] standards compliance ?
  * Packaging system (debhelper/cdbs/dbs) ? Patch system ? Any packaging oddities ?
  * [[http://www.pathname.com/fhs/|FHS]], [[http://www.de.debian.org/doc/debian-policy/|Debian Policy]] compliance ?  '''compliant'''
  * [[http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html|Debian library packaging guide]] standards compliance ?  '''compliant'''
  * Packaging system ? '''debhelper 7 with cdbs''' Patch system ? '''cdbs''' Any packaging oddities ?
Line 38: Line 41:
  * ...
  * Are these all in main ?
  * Build-wise: cdbs, type-handling, debhelper (>= 7.0.0), patchutils, dh-buildinfo, libasound2-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], libsndfile1-dev, doxygen, automake, libtool, libreadline-dev, libraw1394-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], libsamplerate-dev, po-debconf
  * Are these all in main ? '''Yes, all dependencies are in the ''Main'' repositories except:'''
   * libffado-dev, which is awaiting a promotion (already approved) based on component-mismatch
Line 43: Line 47:
  * Who is responsible for monitoring the quality of this package and fixing its bugs ? Are they Ubuntu or Debian developers ? '''Upstream (FFADO) developers along with Ubuntu and Debian developers'''   * Who is responsible for monitoring the quality of this package and fixing its bugs ? Are they Ubuntu or Debian developers ? '''Upstream developers along with Debian and Ubuntu developers (the latter being the ubuntu-audio-dev Launchpad team)'''
Line 47: Line 51:
  * The general purpose and context of the package should be clear from the package's debian/control file. If it isn't then please explain.
  * What do upstream call this software ? Has it had different names in the past ?
  * The general purpose and context of the package should be clear from the package's debian/control file. If it isn't then please explain. '''JACK is a sound server that handles real-time, low latency audio (and MIDI) allowing connections to a number of different applications to an audio device, as well as allowing them to share audio between themselves.'''
  * What do upstream call this software ? Has it had different names in the past ? '''JACK, Jack Audio Connection Kit or simply jackd'''
Line 50: Line 54:
  * Are graphical applications translatable? Do they support gettext?   * Are graphical applications translatable? Do they support gettext? '''GUI is not included with JACK'''
Line 54: Line 58:
MIR bug: [[https://bugs.launchpad.net/BUGNUMBER]] MIR bug: [[https://bugs.launchpad.net/ubuntu/+source/jack-audio-connection-kit/+bug/510481|510481]]
Line 56: Line 60:
Author: [[https://launchpad.net/~slavender|Scott Lavender]]
* Contributor: Arnout 'raboof' Engelen
Author: [[https://launchpad.net/~slavender|Scott Lavender]] <<BR>>
Contributor: Arnout 'raboof' Engelen
Contributor: [[https://launchpad.net/~crimsun|Daniel T Chen]]

Main Inclusion Report for Jack-Audio-Connection-Kit (JACK)

Requirements

  1. Availability: http://archive.ubuntu.com/ubuntu/pool/universe/j/jack-audio-connection-kit; Available for all supported architectures.

  2. Rationale:

    • Many bugs have been filed against various source packages currently in Main (xine, alsa-plugins, portaudio, pulseaudio) requesting that the JACK bridge/plugin/output/etc. be turned on or compiled into the package - this is not possible without the inclusion of Jack in Main. See bugs: 197957, 84900, 152487, 109659, 360590. This may not be a complete list, and duplicates of most of these have been triaged.

    • The libffado drivers for firewire soundcards ( http://www.ffado.org ) are only supported by the Jack driver. This makes these common, pro, semi-pro, and hobbyist audio cards inaccessible for most applications without the previous audio server bridges/plugins/outputs to jack available. Owners of these cards must recompile major audio drivers in order to get even basic playback working.

    • Jack is an audio server designed specifically for professional, reliable audio signals. This is not a duplicate server clogging up the "audio mess", which some people believe exists in Linux; it is a specialty tool for musicians, audio engineers, and anyone using Linux for professional audio. (In fact if anything, allowing the aforementioned bugs to get fixed would clean up a large chunk of the "audio mess" which some believe exists. It would at least stop a large segment of people from griping so loudly about and attempting to remove PulseAudio.)

    • shrinking the Ubuntu source package delta to Debian's
    • enabling the JACK backend for PulseAudio to improve the experience of people who want PA<->JACK functionality

  3. Security:

    • No CVE entries known.

    • No Secunia history known

    • Only binaries in jackd, none of which are suid/sgid. Note: realtime capabilities are nowadays granted to users/groups though PAM, /etc/security/limits.conf

    • jackd is a daemon but is not automatically started on startup
    • jackd does not listen for network connections itself. That functionality requires the manual installation of a separately available 'netjack' driver.
    • No source code review is performed that we know of.
  4. Quality assurance:

    • In what situation does the package not work out of the box without configuration?
      • Jack needs some audio output device to connect to in order to start. This might fail if such a device is not available, or if another process is keeping a device occupied that does not support multiple concurrent connections.
      • Some configuration may be required for optimal performance (i.e. low latency) depending on the audio card used. Configuration instruction are available at help.ubuntu.com.

    • Does the package ask any debconf questions higher than priority 'medium'?
      • No. Specifically, Jack's postinst maintainer script asks if a PAM configuration file to enable realtime priority should be written, and its postrm maintainer script cleans it accordingly.
    • Debian bugs: normal bugs have patches

    • Maintenance in Debian: Is calm

    • Upstream: Is vigorous

    • Upstream bug tracker: nothing particularly relevant or critical there either it seems

    • Hardware: This package deals well with most commonly available consumer, semi- and professional audio cards.

    • Is there a test suite in the upstream source or packaging? No

    • Is it enabled to run in the build? N/A

  5. UI standards:

    • User-visible strings are internationalized using standard gettext system ? Yes

    • Package with translatable strings builds a PO template during package build ? Yes

    • End-user applications ship a desktop file ? Yes

  6. Standards compliance:

  7. Dependencies:

    • Build-wise: cdbs, type-handling, debhelper (>= 7.0.0), patchutils, dh-buildinfo, libasound2-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], libsndfile1-dev, doxygen, automake, libtool, libreadline-dev, libraw1394-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], libsamplerate-dev, po-debconf

    • Are these all in main ? Yes, all dependencies are in the Main repositories except:

      • libffado-dev, which is awaiting a promotion (already approved) based on component-mismatch
  8. Maintenance:

    • How much maintenance is this package likely to need ? (Simple packages may largely take care of themselves; complex packages will need dedicated developers paying attention to them.) Little maintenance should be required

    • Who is responsible for monitoring the quality of this package and fixing its bugs ? Are they Ubuntu or Debian developers ? Upstream developers along with Debian and Ubuntu developers (the latter being the ubuntu-audio-dev Launchpad team)

    • Who is the package bug contact in Ubuntu? (Needs one if its a nontrivial package which does not fully maintain itself through Debian) Ubuntu Studio developers

  9. Background information:

    • The general purpose and context of the package should be clear from the package's debian/control file. If it isn't then please explain. JACK is a sound server that handles real-time, low latency audio (and MIDI) allowing connections to a number of different applications to an audio device, as well as allowing them to share audio between themselves.

    • What do upstream call this software ? Has it had different names in the past ? JACK, Jack Audio Connection Kit or simply jackd

  10. Internationalization:

    • Are graphical applications translatable? Do they support gettext? GUI is not included with JACK

Reviewers

MIR bug: 510481

Author: Scott Lavender
Contributor: Arnout 'raboof' Engelen Contributor: Daniel T Chen

MainInclusionReportJACK (last edited 2010-03-16 12:37:56 by 189)