aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2017-02-16 16:42:29 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2017-02-18 07:54:16 +0700
commite93421ce4fd0bb0954f27cb82ad224425d23b25a (patch)
tree78fb222d62280658f6220ddd95e9b1ed9ad12730
parentf100798b1edee866c3679b1c1a4b84b578f02bd4 (diff)
audio/jack-keyboard: Updated for version 2.7.1.
-rw-r--r--audio/jack-keyboard/README6
-rw-r--r--audio/jack-keyboard/jack-keyboard.SlackBuild48
-rw-r--r--audio/jack-keyboard/jack-keyboard.info6
-rw-r--r--audio/jack-keyboard/setcap.sh1
4 files changed, 43 insertions, 18 deletions
diff --git a/audio/jack-keyboard/README b/audio/jack-keyboard/README
index 61d10621975a..e5599e8e0506 100644
--- a/audio/jack-keyboard/README
+++ b/audio/jack-keyboard/README
@@ -6,3 +6,9 @@ similar to vkeybd, except it uses JACK MIDI instead of ALSA, and the
default keyboard mapping is much better - it uses the same layout as
trackers (like Impulse Tracker) did, so you have two and half octaves
under your fingers.
+
+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.
diff --git a/audio/jack-keyboard/jack-keyboard.SlackBuild b/audio/jack-keyboard/jack-keyboard.SlackBuild
index d7be65e2143e..7116c8010734 100644
--- a/audio/jack-keyboard/jack-keyboard.SlackBuild
+++ b/audio/jack-keyboard/jack-keyboard.SlackBuild
@@ -6,8 +6,17 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20170216 bkw:
+# - Updated for v2.7.1. Apparently, upstream released 2.7.1 in 2012, but
+# never got around to updating their web page, which still says that
+# 2.5 is the latest release. It took me this long (5 years!) to notice
+# there was a newer version on their sourceforge download page. Note
+# that 2.5 used autotools but 2.7.1 uses cmake, so this script can no
+# longer be used to build the old version.
+# - Add capability stuff.
+
PRGNAM=jack-keyboard
-VERSION=${VERSION:-2.5}
+VERSION=${VERSION:-2.7.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -53,31 +62,40 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
make
-make install-strip DESTDIR=$PKG
+make install DESTDIR=$PKG
+strip $PKG/usr/bin/$PRGNAM
gzip -9 $PKG/usr/man/man1/$PRGNAM.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS COPYING NEWS README TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+# 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/$PRGNAM
+ chmod 0750 $PKG/usr/bin/$PRGNAM
+fi
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/audio/jack-keyboard/jack-keyboard.info b/audio/jack-keyboard/jack-keyboard.info
index 579b918651be..31fefc50fdc9 100644
--- a/audio/jack-keyboard/jack-keyboard.info
+++ b/audio/jack-keyboard/jack-keyboard.info
@@ -1,8 +1,8 @@
PRGNAM="jack-keyboard"
-VERSION="2.5"
+VERSION="2.7.1"
HOMEPAGE="http://jack-keyboard.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/jack-keyboard/jack-keyboard/2.5/jack-keyboard-2.5.tar.gz"
-MD5SUM="030a666f1703ef1ab3eae6004cb04a9a"
+DOWNLOAD="http://downloads.sourceforge.net/project/jack-keyboard/jack-keyboard/2.7.1/jack-keyboard-2.7.1.tar.gz"
+MD5SUM="b89c9ac03e850ad1aa8b33ff62ea06a8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jack-audio-connection-kit"
diff --git a/audio/jack-keyboard/setcap.sh b/audio/jack-keyboard/setcap.sh
new file mode 100644
index 000000000000..1d6c411213ce
--- /dev/null
+++ b/audio/jack-keyboard/setcap.sh
@@ -0,0 +1 @@
+[ -x /sbin/setcap ] && /sbin/setcap cap_ipc_lock,cap_sys_nice=ep usr/bin/jack-keyboard