PKGBUILDs/community/x42-plugins/PKGBUILD
2019-08-20 18:37:48 +00:00

116 lines
3.9 KiB
Bash

# Maintainer: David Runge <dave@sleepmap.de>
# Contributor: Lieven Moors <lievenmoors@gmail.com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - export OPTIMIZATIONS to override Makefiles without x86isms
pkgname=x42-plugins
pkgver=20190820
pkgrel=1
pkgdesc="Collection of LV2 plugins"
arch=('x86_64')
url="https://github.com/x42/x42-plugins"
license=('GPL2' 'GPL3')
depends=('ftgl' 'libltc' 'pango' 'zita-convolver')
makedepends=('gendesk' 'help2man' 'jack' 'liblo' 'lv2' 'ttf-dejavu')
optdepends=('jack: for standalone applications'
'liblo: for standalone applications')
groups=('lv2-plugins' 'pro-audio')
source=("http://gareus.org/misc/${pkgname}/${pkgname}-${pkgver}.tar.xz")
sha512sums=('a8a62427c5706cac3eb1ba3e5e5ee6deb81c3ae04ec3a45c44faf2a647e079c245a28a3ef0b85ada62575e43238825a25c460317aa13891694e2d52497facf04')
prepare() {
cd "${pkgname}-${pkgver}"
declare -A comments=(
["darc"]="A general purpose audio signal compressor"
["dpl1"]="Look-ahead digital peak limiter intended but not limited to the final step of mastering or mixing"
["fat1"]="Auto-tuner based on Fons Adriaensen's zita-at1"
["fil4"]="4 band parametric equalizer with additional low+high shelf filters, Low and High-pass"
["mixtri"]="Matrix mixer and trigger processor"
["scope"]="Simple audio oscilloscope with variable time scale, triggering, cursors and numeric readout"
["spectr"]="Spectrum Analyzer"
["stepseq"]="Simple step sequencer for moddevices.com"
)
declare -A generic=(
["darc"]="Dynamic Audio Range Compressor"
["dpl1"]="Peak Limiter"
["fat1"]="Auto Tune"
["fil4"]="Parametric Equalizer"
["mixtri"]="Mixer'n'Trigger"
["scope"]="Oscilloscope"
["spectr"]="Spectrum Analyzer"
["stepseq"]="Step Sequencer"
)
declare -A meter_types=(
[0]='EBU R128 Meter'
[1]='K20/RMS Meter (Stereo)'
[2]='K14/RMS Meter (Stereo)'
[3]='K12/RMS Meter (Stereo)'
[4]='BBC Meter (Stereo)'
[5]='BBC M-6'
[6]='DIN Meter (Stereo)'
[7]='EBU Meter (Stereo)'
[8]='Nordic Meter (Stereo)'
[9]='VU Meter (Stereo)'
[10]='True-Peak and RMS Meter (Stereo)'
[11]='DR-14 - Crest Factor Loudness Range Meter'
[12]='Stereo Phase-Correlation Meter'
[13]='Goniometer'
[14]='Phase/Frequency Wheel'
[15]='1/3 Octave Spectrum Analyzer'
[16]='Stereo/Frequency Scope'
[17]='Signal Distribution Histogram'
[18]='Bit Meter'
[19]='Surround Level 8'
)
declare -A tuna_types=(
[0]='Instrument Tuner'
[1]='Instrument Tuner (Spectrum)'
)
# XDG desktop files
for name in "${!comments[@]}"; do
gendesk -n \
--pkgname "x42-${name}" \
--name "x42-${name}" \
--pkgdesc "${comments[$name]}" \
--genericname "${generic[$name]}" \
--categories "AudioVideo;Audio"
done
for type in {0..19}; do
gendesk -n \
--pkgname "x42-meter-${type}" \
--name "x42-meter ${meter_types[$type]}" \
--pkgdesc "${meter_types[$type]}" \
--exec "x42-meter $type" \
--icon "x42-meter" \
--genericname "Audio Meter" \
--categories "AudioVideo;Audio"
done
for type in {0,1}; do
gendesk -n \
--pkgname "x42-tuna-${type}" \
--name "x42-tuna ${tuna_types[$type]}" \
--pkgdesc "${tuna_types[$type]}" \
--exec "x42-tuna $type" \
--icon "x42-tuna" \
--genericname "Music Instrument Tuner" \
--categories "AudioVideo;Audio"
done
}
build() {
cd "${pkgname}-${pkgver}"
# replace ttf-freefont with ttf-liberation
export FONTFILE=/usr/share/fonts/TTF/DejaVuSans-Bold.ttf
export OPTIMIZATIONS="-ffast-math -fomit-frame-pointer -O3 -fno-finite-math-only"
make
}
package() {
cd "${pkgname}-${pkgver}"
make install DESTDIR="$pkgdir/" PREFIX=/usr
install -vDm 644 *.desktop -t "${pkgdir}/usr/share/applications/"
}
# vim:set ts=2 sw=2 et: