From b873eb05f1c9f6e68c5b9a980e3ccd07be1cbcf2 Mon Sep 17 00:00:00 2001 From: Johannes Schoepfer Date: Sat, 16 Nov 2019 21:04:50 +0700 Subject: audio/amSynth: Updated for version 1.9.0. Signed-off-by: Willy Sudiarto Raharjo --- audio/amSynth/README | 38 ++++++++++++++++++++++++++---- audio/amSynth/amSynth.SlackBuild | 50 ++++++++++++++++++++++++++++------------ audio/amSynth/amSynth.info | 12 +++++----- audio/amSynth/slack-desc | 22 +++++++++--------- 4 files changed, 85 insertions(+), 37 deletions(-) diff --git a/audio/amSynth/README b/audio/amSynth/README index 57a1fa8ad9..7d06c273ce 100644 --- a/audio/amSynth/README +++ b/audio/amSynth/README @@ -1,7 +1,35 @@ -amSynth stands for Analogue Modeling SYNTHesizer. +amsynth is an analog modelling (a.k.a virtual analog) software synthesizer. -It provides virtual analogue synthesis in the style of the classic -Moog Minimoog/Roland Junos. It offers an easy-to-use interface and -synth engine, while still creating varied sounds. +It mimics the operation of early analog subtractive synthesizers with +classic oscillator waveforms, envelopes, filter, modulation and effects. -jack-audio-connection-kit is an optional dependency. +The aim is to make it easy to create and modify sounds. + + +Features +-------- + + * Dual oscillators (sine / saw / square / noise) with hard sync + * 12/24 dB/oct resonant filter (low-pass / high-pass / band-pass / notch) + * Mono / poly / legato keyboard modes + * Dual ADSR envelope generators (filter & amplitude) + * LFO which can modulate the oscillators, filter, and amplitude + * Distortion and reverb + * Hundreds of presets + + +There are currently several different ways to run amsynth: + + * Stand-alone application using JACK, ALSA or OSS + * DSSI plug-in + * LV2 plug-in + * VST plug-in + +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, autodetected at buildtime: +jack-audio-connection-kit||jack2,lash,dssi,pandoc diff --git a/audio/amSynth/amSynth.SlackBuild b/audio/amSynth/amSynth.SlackBuild index 7bb1520260..fc539c57ab 100644 --- a/audio/amSynth/amSynth.SlackBuild +++ b/audio/amSynth/amSynth.SlackBuild @@ -1,8 +1,9 @@ #!/bin/sh -# Slackware build script for amSynth +# Slackware build script for amsynth -# Copyright (C) 2006 paul wisehart wise@lupulin.net +# Copyright 2006 paul wisehart wise@lupulin.net +# Copyright 2019 Johannes Schoepfer, Germany # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -22,17 +23,14 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# Modified by the SlackBuilds.org project - PRGNAM=amSynth -SRCNAM=amsynth -VERSION=${VERSION:-1.6.3} +VERSION=${VERSION:-1.9.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 +41,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" @@ -62,9 +60,11 @@ set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP -rm -rf $SRCNAM-release-$VERSION -tar xvf $CWD/release-$VERSION.tar.gz || tar xvf $CWD/$SRCNAM-release-$VERSION.tar.gz -cd $SRCNAM-release-$VERSION +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 +#cd $PRGNAM-$VERSION +# Since the source doesn't contain "S" ..., i'd like to rename this package for a reason +cd amsynth-$VERSION chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ @@ -72,20 +72,31 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -./autogen.sh CFLAGS="$SLKCFLAGS" \ -CXXFLAGS="$SLKCFLAGS -std=c++11" \ +CXXFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --sysconfdir=/etc \ --localstatedir=/var \ - --enable-static=no \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --enable-shared \ + --disable-static \ --build=$ARCH-slackware-linux make make install-strip DESTDIR=$PKG +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# only if pandoc is present +if [ -d $PKG/usr/man ]; then + 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 +fi + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a AUTHORS COPYING INSTALL NEWS README $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild @@ -94,5 +105,14 @@ 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 + # set realtime capabilities + echo "/sbin/setcap cap_ipc_lock,cap_sys_nice=ep usr/bin/amsynth" >> $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/amSynth/amSynth.info b/audio/amSynth/amSynth.info index 1d8529034a..824b9e0833 100644 --- a/audio/amSynth/amSynth.info +++ b/audio/amSynth/amSynth.info @@ -1,10 +1,10 @@ PRGNAM="amSynth" -VERSION="1.6.3" -HOMEPAGE="https://github.com/amsynth/amsynth/" -DOWNLOAD="https://github.com/amsynth/amsynth/archive/release-1.6.3.tar.gz" -MD5SUM="8d172ebd8a767fbb20d56931f259f846" +VERSION="1.9.0" +HOMEPAGE="https://amsynth.github.io/" +DOWNLOAD="https://github.com/amsynth/amsynth/releases/download/release-1.9.0/amSynth-1.9.0.tar.bz2" +MD5SUM="2328dba5ffb5310ff7b1ab14805da9d5" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" -MAINTAINER="Christopher Forrest" -EMAIL="nyrednek@gmx.com" +MAINTAINER="Johannes Schoepfer" +EMAIL="slackbuilds@schoepfer.info" diff --git a/audio/amSynth/slack-desc b/audio/amSynth/slack-desc index 532a30869a..b53d4286d0 100644 --- a/audio/amSynth/slack-desc +++ b/audio/amSynth/slack-desc @@ -6,14 +6,14 @@ # customary to leave one space after the ':' except on otherwise blank lines. |-----handy-ruler------------------------------------------------------| -amSynth: amSynth (Analogue Modeling SYNTHesizer) -amSynth: -amSynth: AMSynth provides virtual analogue synthesis in the style of the -amSynth: classic Moog Minimoog/Roland Junos. It offers an easy-to-use -amSynth: interface and synth engine, while still creating varied sounds. -amSynth: -amSynth: -amSynth: -amSynth: -amSynth: -amSynth: +amsynth: amsynth (analogue modelling synthesizer) +amsynth: +amsynth: It mimics the operation of early analog subtractive synthesizers. +amsynth: The aim is to make it easy to create and modify sounds. +amsynth: +amsynth: * Dual oscillators (sine/saw/square/noise) with hard sync +amsynth: * 12/24 dB/oct resonant filter (low-pass/high-pass/band-pass/notch) +amsynth: * Dual ADSR envelope generators (filter & amplitude) +amsynth: * LFO which can modulate the oscillators, filter, and amplitude +amsynth: * Distortion and reverb +amsynth: * Hundreds of presets -- cgit v1.2.3