Package Details: jack2-git 1:1.9.16.r0.g5b78c2ef-1

Git Clone URL: (read-only, click to copy)
Package Base: jack2-git
Description: C++ version of the JACK low-latency audio server for multi-processor machines
Upstream URL:
Keywords: audio cv jack midi
Licenses: GPL2, LGPL2.1
Groups: pro-audio
Conflicts: jack, jack2
Provides: jack, jack=1.9.16, jack2, jack2=1.9.16,,,
Replaces: jack2-dbus-git
Submitter: longname
Maintainer: milk (dvzrv, SpotlightKid)
Last Packager: SpotlightKid
Votes: 8
Popularity: 0.000182
First Submitted: 2012-03-04 20:18
Last Updated: 2020-10-19 15:59

Dependencies (26)

Required by (590)

Sources (1)

Latest Comments

« First ‹ Previous 1 2 3 4 5 Next › Last »

dvzrv commented on 2016-12-28 15:09

@Ralf_Mardorf, greygjhart: FYI, Ralf's proposed change in versioning is actually also the correct way of versioning according to packaging guidelines for VCS packages:

Ralf_Mardorf commented on 2016-02-27 18:15


consider to give the package an appropriated version number.

Instead of

[rocketmouse@archlinux jack2]$ git rev-list --count master

the following to me is more reasonable:

[rocketmouse@archlinux jack2]$ git describe|cut -d"v" -f2|sed -r 's/^V//;s/([^-]*-g)/r\1/;s/-/./g'

Oops, resp.:

[rocketmouse@archlinux jack2]$ git describe|sed -r 's/^v//;s/([^-]*-g)/r\1/;s/-/./g'

The correct dependency seems to be "python2-dbus" and not "python2".

Assumed somebody temporarily wants to build jack2 from git, but switch back to jack2 from the official repository, as soon as 1.9.11 is released, you could replace the original PKGBUILD by this one [1].

To replace .SRCINFO after replacing the PKGBUILD run

makepkg --printsrcinfo > .SRCINFO


[rocketmouse@archlinux jack2-rocketmouse]$ cat PKGBUILD
pkgname=('jack2' 'jack2-dbus')
#pkgname= # single build (overrides split)
arch=('i686' 'x86_64')
makedepends=('python2-dbus' 'celt' 'opus' 'libsamplerate' 'git' 'libffado')


_pyfix() {
sed -i 's:bin/env python:bin/env python2:' \

_wafconf() {
# default=64, AUR=128, kxstudio=256 --clients=
# default=768, AUR=1536, kxstudio=2048 --ports-per-application=

python2 waf configure --prefix=/usr \
--clients=64 --ports-per-application=768 \
--alsa --firewire $@

_isbuild() {
printf "%s\n" ${pkgname[@]} | grep -qx $1

pkgver() {
cd jack2
echo $(git describe|cut -d"v" -f2|sed -r 's/^V//;s/([^-]*-g)/r\1/;s/-/./g')

prepare() {
# we may do 2 different builds
cp -r $_gitname $_gitname-dbus

build() {
cd "$srcdir"

# mixed dbus/classic build
if _isbuild jack2; then
cd $_gitname
msg2 "Running Mixed D-Bus/Classic build"
_wafconf --classic --dbus
python2 waf build $MAKEFLAGS
cd ..

# dbus-ONLY build
if _isbuild jack2-dbus; then
cd $_gitname-dbus
msg2 "Running D-Bus-only build"
_wafconf --dbus
python2 waf build $MAKEFLAGS
cd ..

package_jack2() {
! _isbuild jack2 && return 0

pkgdesc="The next-generation JACK with SMP support"
depends=('libsamplerate' 'opus' 'celt' 'libffado')
optdepends=('python2-dbus: jack_control')
provides=('jack' 'jackmp' 'jackdmp' 'jackdbus')

cd "$srcdir/$_gitname"

python2 waf install --destdir="$pkgdir"

# fix for major python transition

# configure realtime access/scheduling
install -Dm644 "$srcdir/99-audio.conf" \

install -Dm644 "$srcdir/40-hpet-permissions.rules" \

package_jack2-dbus() {
! _isbuild jack2-dbus && return 0

pkgdesc="The next-generation JACK with SMP support (for D-BUS interaction only)"
depends=('libsamplerate' 'celt' 'opus' 'libffado')
optdepends=('python2-dbus: jack_control')
conflicts=('jack' 'jack2')
provides=('jack' 'jack2' 'jackmp' 'jackdmp' 'jackdbus')

cd "$srcdir/$_gitname-dbus"

python2 waf install --destdir="$pkgdir"


install -Dm644 "$srcdir/99-audio.conf" \

install -Dm644 "$srcdir/40-hpet-permissions.rules" \

ristic commented on 2015-08-24 06:38

You need to add 'jack2' to the provides for pulseaudio-jack to remain happy.

rtfreedman commented on 2013-12-22 15:15

Don't use an AUR helper like yaourt or packer for building/installing in one go.
Download the src
and use makepkg and 'pacman -U jack2-git-3131-1-i686.pkg.tar.xz'

blackhole commented on 2013-12-22 12:07

I need jack without dbus for systemd jackd.service. However this package want to intall jack2-git and jack2-dbus-git at the same time. This is strange.
At last I had to delete --dbus from the PKGBUILD and install manually jack2-git from /temp directory.

This i my custom jackd.service:
User=<your user>
ExecStart=<your jack start line>

jonnor commented on 2013-05-25 21:11

Please add git to makedepends

rtfreedman commented on 2013-05-13 00:18

Updated PKGBUILD, enabled opus & default cpu optimization as seems to be fixed.

alucryd commented on 2013-02-18 08:48

merging into jack2-git

Joermungand commented on 2013-01-11 15:20

In order for jack2 to compile, opus needs to be compiled with custom modes enabled. What I did was install opus-git from AUR, edit its PKGBUILD file and add --enable-custom-modes to the ./configure options (line 41) before building. It worked then.

Brett commented on 2013-01-04 01:48

[ 49/247] cxx: common/JackNetTool.cpp -> build/common/JackNetTool.cpp.1.o
In file included from ../common/JackNetTool.cpp:20:0:
../common/JackNetTool.h:412:30: fatal error: opus/opus_custom.h: No such file or directory
compilation terminated.
Waf: Leaving directory `/tmp/yaourt-tmp-brett/aur-jack2-git/src/jack2-git-build/build'
Build failed
Compilation throws a different error if I use the opus includes from the opus 1.0.2 source tarball at
Very similar to
netsource.c:(.text+0xd3b): undefined reference to `opus_custom_mode_create'
netsource.c:(.text+0xd5c): undefined reference to `opus_custom_encoder_create'
netsource.c:(.text+0xd81): undefined reference to `opus_custom_encoder_ctl'
netsource.c:(.text+0xd95): undefined reference to `opus_custom_encoder_ctl'
netsource.c:(.text+0xda9): undefined reference to `opus_custom_encoder_ctl'
netsource.c:(.text+0xdbd): undefined reference to `opus_custom_encoder_ctl'
netsource.c:(.text+0xdcd): undefined reference to `opus_custom_encoder_init'
netsource.c:(.text+0xe46): undefined reference to `opus_custom_mode_create'
netsource.c:(.text+0xe67): undefined reference to `opus_custom_decoder_create'
netsource.c:(.text+0xe86): undefined reference to `opus_custom_decoder_init'
common/netjack_packet.c.30.o: In function `render_payload_to_jack_ports_opus':
netjack_packet.c:(.text+0x2f38): undefined reference to `opus_custom_decode_float'
common/netjack_packet.c.30.o: In function `render_jack_ports_to_payload_opus':
netjack_packet.c:(.text+0x3122): undefined reference to `opus_custom_encode_float'
collect2: error: ld returned 1 exit status
Waf: Leaving directory `/tmp/yaourt-tmp-brett/aur-jack2-kxstudio/src/jack-'
Build failed
-> task in 'jack_netsource' failed (exit status 1):
{task 140087905566992: cprogram netsource.c.30.o,netjack_packet.c.30.o -> jack_netsource}
['/usr/bin/gcc', '-Wl,-O1,--sort-common,-z,relro', '-Wl,-O1,--sort-common,-z,relro', 'example-clients/netsource.c.30.o', 'common/netjack_packet.c.30.o', '-o', '/tmp/yaourt-tmp-brett/aur-jack2-kxstudio/src/jack-', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Lcommon', '-ljack', '-lcelt0', '-lsamplerate', '-lopus', '-lm', '-lpthread', '-lrt', '-ldl', '-ldbus-1']
==> ERROR: A failure occurred in build().