audio/tap_plugins: Updated for version 0.7.3, add desktop/setcap.

This commit is contained in:
B. Watson 2015-11-04 17:25:34 -05:00 committed by Willy Sudiarto Raharjo
parent 230d78d59a
commit 552fad9c44
9 changed files with 83 additions and 29 deletions

View file

@ -7,3 +7,9 @@ echo, eq, limiter & more.
This package includes the main tap-plugins distribution, plus the
tap-plugins-doc and tap-reverbed (TAP Reverb Editor) distributions.
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.

View file

@ -0,0 +1,4 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

View file

@ -0,0 +1,26 @@
diff -Naur tap-reverbed-r0/src/file_io.c tap-reverbed-r0.patched/src/file_io.c
--- tap-reverbed-r0/src/file_io.c 2004-06-18 07:19:01.000000000 -0400
+++ tap-reverbed-r0.patched/src/file_io.c 2015-11-04 16:11:02.000000000 -0500
@@ -62,6 +62,8 @@
}
+/* default config, used as fallback if ~/.reverbed not found */
+#define SYS_REVERBED "/etc/reverbed/reverbed.conf"
REVTYPE *
parse_input_file(void) {
@@ -85,8 +87,11 @@
home = ".";
sprintf(path, "%s/%s", home, NAME_REVERBED);
if ((infile = fopen(path,"rt")) == NULL) {
- fprintf(stderr, "Unable to open %s\n", path);
- return(NULL);
+ fprintf(stderr, "Unable to open %s, trying %s\n", path, SYS_REVERBED);
+ if ((infile = fopen(SYS_REVERBED ,"rt")) == NULL) {
+ fprintf(stderr, "Unable to open %s", SYS_REVERBED);
+ return(NULL);
+ }
}
if ((root = malloc(sizeof(REVTYPE))) == NULL) {

View file

@ -0,0 +1,7 @@
[Desktop Entry]
Name=TAP Reverb Editor
Exec=reverbed
Terminal=false
Type=Application
Categories=AudioVideo;Audio;
Icon=reverbed

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

View file

@ -1,14 +0,0 @@
#!/bin/sh
# Wrapper script for reverbed. When reverbed is run, it requires its
# config file to already be present in the user's home directory. If not,
# it'll exit, printing a message on the terminal... but if the user launched
# it via an icon from a desktop environment, he won't see the error (it will
# appear to silently fail to run). To avoid confusion, this script creates
# the config file if & only if it doesn't already exist.
if [ ! -e ~/.reverbed ]; then
cat /usr/doc/tap_plugins-@VERSION@/dot.reverbed.default > ~/.reverbed
fi
exec /usr/bin/reverbed.bin

View file

@ -0,0 +1 @@
[ -x /sbin/setcap ] && /sbin/setcap cap_ipc_lock,cap_sys_nice=ep usr/bin/reverbed

View file

@ -6,9 +6,15 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# 20151104 bkw:
# update for v0.7.3, update docs to 20140526
# get rid of reverbed.sh wrapper script (patch reverbed instead)
# add capability stuff for reverbed
# add .desktop, icon for reverbed
PRGNAM=tap_plugins
VERSION=${VERSION:-0.7.2}
BUILD=${BUILD:-2}
VERSION=${VERSION:-0.7.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
CWD=$(pwd)
@ -45,7 +51,7 @@ FORCE_SYSTEM_LADSPA_H=${FORCE_SYSTEM_LADSPA_H:-no}
PLUGINS_SRCNAM=tap-plugins
DOCS_SRCNAM=tap-plugins-doc
DOCS_VERSION=20040817
DOCS_VERSION=20140526
REVERBED_SRCNAM=tap-reverbed
REVERBED_VERSION=r0
@ -97,6 +103,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
# patch by SlackBuild author, makes reverbed load its config from /etc
# if no ~/.reverbed found (rather than aborting with an error message).
patch -p1 < $CWD/reverbed-default-config.diff
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@ -113,14 +123,19 @@ fi
make LIBS=-lm
# more trouble than it's worth to get 'make install' to handle DESTDIR
strip src/reverbed
mkdir -p $PKG/usr/bin
cp src/reverbed $PKG/usr/bin/reverbed.bin
cat src/.reverbed > $PKG/usr/doc/$PRGNAM-$VERSION/dot.reverbed.default
mkdir -p $PKG/usr/bin $PKG/etc/reverbed
install -s -m0755 -oroot -groot src/reverbed $PKG/usr/bin/
cat src/.reverbed > $PKG/etc/reverbed/reverbed.conf
# Shell script wrapper
sed 's/@VERSION@/'$VERSION'/g' < $CWD/reverbed.sh > $PKG/usr/bin/reverbed
chmod 0755 $PKG/usr/bin/reverbed
# icon came from:
# https://www.hscripts.com/freeimages/icons/mechanical/spring-clipart.php
# and turned into a PNG via ImageMagick's convert.
mkdir -p $PKG/usr/share/pixmaps
cat $CWD/reverbed.png > $PKG/usr/share/pixmaps/reverbed.png
# .desktop written by SlackBuild author
mkdir -p $PKG/usr/share/applications
cat $CWD/reverbed.desktop > $PKG/usr/share/applications/reverbed.desktop
# ChangeLog and NEWS are 0-length placeholders
for i in AUTHORS COPYING README; do
@ -143,6 +158,15 @@ cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.SBo
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/reverbed
chmod 0750 $PKG/usr/bin/reverbed
fi
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -1,12 +1,12 @@
PRGNAM="tap_plugins"
VERSION="0.7.2"
VERSION="0.7.3"
HOMEPAGE="http://tap-plugins.sourceforge.net/"
DOWNLOAD="http://downloads.sourceforge.net/project/tap-plugins/tap-plugins/0.7.2/tap-plugins-0.7.2.tar.gz \
DOWNLOAD="http://downloads.sourceforge.net/project/tap-plugins/tap-plugins/0.7.3/tap-plugins-0.7.3.tar.gz \
http://downloads.sourceforge.net/project/tap-plugins/tap-reverbed/Release%200/tap-reverbed-r0.tar.gz \
http://downloads.sourceforge.net/project/tap-plugins/tap-plugins-doc/2004-08-17/tap-plugins-doc-20040817.tar.gz"
MD5SUM="354b171e580cfad6bad87c26a79ef273 \
http://downloads.sourceforge.net/project/tap-plugins/tap-plugins-doc/2014-05-26/tap-plugins-doc-20140526.tar.gz"
MD5SUM="113fa021b2a05e2fd3cf35f65e6ca137 \
f8b15df131b45d2d5ef2e8d7c34e9a29 \
9a320210a7a9417487ceb31d6e5c21be"
8af9ad9be0aac9f577056311d7ebbd5e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jack-audio-connection-kit ladspa_sdk"