aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2018-02-02 18:32:46 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2018-02-10 08:09:25 +0700
commitb5873c2f39b3b907731be92f672d2ad0587b9fcb (patch)
tree4433023d09159bf9230f52c185c684f534cf1e37
parent9b0bba1bf086a766a23ee3bd402d0792c0b70721 (diff)
audio/jack-audio-connection-kit: Updated for version 0.125.0.
Signed-off-by: B. Watson <yalhcru@gmail.com>
-rw-r--r--audio/jack-audio-connection-kit/README16
-rw-r--r--audio/jack-audio-connection-kit/jack-audio-connection-kit.SlackBuild30
-rw-r--r--audio/jack-audio-connection-kit/jack-audio-connection-kit.info10
-rw-r--r--audio/jack-audio-connection-kit/setcap.sh14
4 files changed, 42 insertions, 28 deletions
diff --git a/audio/jack-audio-connection-kit/README b/audio/jack-audio-connection-kit/README
index d05ea7c72a24..7d1667887d13 100644
--- a/audio/jack-audio-connection-kit/README
+++ b/audio/jack-audio-connection-kit/README
@@ -4,16 +4,10 @@ allow them to share audio among themselves. Its clients can run in their
own processes (ie. as a normal application) or they can run within a JACK
server instance (i.e. as a "plugin").
-jackd has to run with realtime privileges. One way to do this on Slackware
-would be to use set_rlimits. Since 12.2 there's another way - if you have
-a filesystem that supports posix capabilities (reiserfs does not), you can
-grant jackd the rights to run in realtime mode, even when started as a
-normal user, with the following command:
-
- setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd
-
-If you use qjackctl to start jack, it will need the same capabilities set
-to be able to start jack as non-root user. You can use the same command
-with 'qjackctl' instead of 'jackd'
+This package uses POSIX filesystem capabilities to execute with
+elevated privileges (required for realtime audio processing). This
+may be considered a security/stability risk. Please read
+http://www.slackbuilds.org/caps/ for more information. To disable
+capabilities, pass SETCAP=no to the script.
Optional dependencies are libffado and celt.
diff --git a/audio/jack-audio-connection-kit/jack-audio-connection-kit.SlackBuild b/audio/jack-audio-connection-kit/jack-audio-connection-kit.SlackBuild
index 02c98f9559c4..570646540188 100644
--- a/audio/jack-audio-connection-kit/jack-audio-connection-kit.SlackBuild
+++ b/audio/jack-audio-connection-kit/jack-audio-connection-kit.SlackBuild
@@ -25,14 +25,16 @@
# Modified by Robby Workman <rworkman@slackbuilds.org>
# No additional license terms added :)
+# Modified and now maintained by B. Watson <yalhcru@gmail.com>
+
PRGNAM=jack-audio-connection-kit
-VERSION=${VERSION:-0.124.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.125.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -43,8 +45,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -68,9 +70,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
# respect march and mtune flags: fixes building on x86_64
sed -i 's|-march=native \-mtune=native||' configure.ac
@@ -93,11 +95,7 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+gzip -9 $PKG/usr/man/man?/*.?
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING* README TODO $PKG/usr/doc/$PRGNAM-$VERSION
@@ -106,5 +104,13 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+# Only add capability stuff if not disabled:
+if [ "${SETCAP:-yes}" = "yes" ]; then
+ cat $CWD/setcap.sh >> $PKG/install/doinst.sh
+ # Only allow execution by audio group
+ chown root:audio $PKG/usr/bin/*
+ chmod 0750 $PKG/usr/bin/*
+fi
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/jack-audio-connection-kit/jack-audio-connection-kit.info b/audio/jack-audio-connection-kit/jack-audio-connection-kit.info
index c25d1388a437..215ab249b3f7 100644
--- a/audio/jack-audio-connection-kit/jack-audio-connection-kit.info
+++ b/audio/jack-audio-connection-kit/jack-audio-connection-kit.info
@@ -1,10 +1,10 @@
PRGNAM="jack-audio-connection-kit"
-VERSION="0.124.1"
+VERSION="0.125.0"
HOMEPAGE="http://jackaudio.org"
-DOWNLOAD="http://jackaudio.org/downloads/jack-audio-connection-kit-0.124.1.tar.gz"
-MD5SUM="d64e90121be8a54860b870a726fb5b5d"
+DOWNLOAD="http://jackaudio.org/downloads/jack-audio-connection-kit-0.125.0.tar.gz"
+MD5SUM="d9b7e230aeae2d5b45c7a822b2d2dd15"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"
diff --git a/audio/jack-audio-connection-kit/setcap.sh b/audio/jack-audio-connection-kit/setcap.sh
new file mode 100644
index 000000000000..7286a60f224b
--- /dev/null
+++ b/audio/jack-audio-connection-kit/setcap.sh
@@ -0,0 +1,14 @@
+# set realtime capabilities on all these binaries
+if [ -x /sbin/setcap ]; then
+ for i in alsa_in alsa_out jack_alias jack_bufsize jack_connect \
+ jack_disconnect jack_evmon jack_freewheel jack_impulse_grabber \
+ jack_iodelay jack_latent_client jack_load jack_load_test \
+ jack_lsp jack_metro jack_midi_dump jack_midiseq jack_midisine \
+ jack_monitor_client jack_netsource jack_property jack_rec \
+ jack_samplerate jack_server_control jack_session_notify \
+ jack_showtime jack_simple_client jack_simple_session_client \
+ jack_transport jack_transport_client jack_unload jack_wait jackd
+ do
+ /sbin/setcap cap_ipc_lock,cap_sys_nice=ep usr/bin/$i
+ done
+fi