Package Details: jack2-git 3274-1

Git Clone URL: https://aur.archlinux.org/jack2-git.git (read-only)
Package Base: jack2-git
Description: The next-generation JACK with SMP support
Upstream URL: http://jackaudio.org/
Licenses: GPL
Conflicts: jack
Provides: jack, jackdbus, jackdmp, jackmp
Submitter: longname
Maintainer: greygjhart
Last Packager: greygjhart
Votes: 6
Popularity: 0.045842
First Submitted: 2012-03-04 20:18
Last Updated: 2015-07-31 21:28

Dependencies (11)

Required by (194)

Sources (3)

Latest Comments

Ralf_Mardorf commented on 2016-02-27 18:15

Hi,

consider to give the package an appropriated version number.

Instead of

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

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'
1.9.10.r177.g7bdad49

Oops, resp.:

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

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

Regards,
Ralf


[1]
[rocketmouse@archlinux jack2-rocketmouse]$ cat PKGBUILD
pkgbase=jack2
pkgname=('jack2' 'jack2-dbus')
#pkgname= # single build (overrides split)
_tarname=jack
pkgver=1.9.10.r177.g7bdad49
pkgrel=1
arch=('i686' 'x86_64')
url="http://jackaudio.org/"
backup=(etc/security/limits.d/99-audio.conf)
license=('GPL')
makedepends=('python2-dbus' 'celt' 'opus' 'libsamplerate' 'git' 'libffado')
source=("git+https://github.com/jackaudio/jack2"
'99-audio.conf'
'40-hpet-permissions.rules')
md5sums=('SKIP'
'ae65b7c9ebe0fff6c918ba9d97ae342d'
'471aad533ff56c5d3cbbf65ce32cadef')

_gitname='jack2'

_pyfix() {
sed -i 's:bin/env python:bin/env python2:' \
"$pkgdir/usr/bin/jack_control"
}

_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 ..
fi

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

package_jack2() {
! _isbuild jack2 && return 0

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

cd "$srcdir/$_gitname"

python2 waf install --destdir="$pkgdir"

# fix for major python transition
_pyfix

# configure realtime access/scheduling
install -Dm644 "$srcdir/99-audio.conf" \
"$pkgdir/etc/security/limits.d/99-audio.conf"

install -Dm644 "$srcdir/40-hpet-permissions.rules" \
"$pkgdir/usr/lib/udev/rules.d/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"

_pyfix

install -Dm644 "$srcdir/99-audio.conf" \
"$pkgdir/etc/security/limits.d/99-audio.conf"

install -Dm644 "$srcdir/40-hpet-permissions.rules" \
"$pkgdir/usr/lib/udev/rules.d/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 https://aur.archlinux.org/packages/ja/jack2-git/jack2-git.tar.gz
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:
[Unit]
Description=JACK
After=sound.target
[Service]
LimitRTPRIO=infinity
LimitMEMLOCK=infinity
User=<your user>
ExecStart=<your jack start line>
[Install]
WantedBy=multi-user.target

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
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53663 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 xiph.org.
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-1.9.9.5/build'
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-1.9.9.5/build/example-clients/jack_netsource', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Lcommon', '-ljack', '-lcelt0', '-lsamplerate', '-lopus', '-lm', '-lpthread', '-lrt', '-ldl', '-ldbus-1']
==> ERROR: A failure occurred in build().

Brett commented on 2013-01-04 00:21

[ 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 xiph.org.
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-1.9.9.5/build'
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-1.9.9.5/build/example-clients/jack_netsource', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Lcommon', '-ljack', '-lcelt0', '-lsamplerate', '-lopus', '-lm', '-lpthread', '-lrt', '-ldl', '-ldbus-1']
==> ERROR: A failure occurred in build().

All comments