Zrythm installer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

110 lines
4.2 KiB

# Copyright (C) 2020-2022 Alexandros Theodotou <alex at zrythm dot org>
#
# This file is part of Zrythm
#
# Zrythm is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Zrythm is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with Zrythm. If not, see <https://www.gnu.org/licenses/>.
#
# Maintainer: Alexandros Theodotou <alex at zrythm dot org>
pkgname=zrythm@DASH_TRIAL@
pkgver=@ZRYTHM_PKG_VERSION@
pkgrel=1
pkgdesc='a highly automated and intuitive digital audio workstation'
arch=('x86_64' 'i686')
url="https://www.zrythm.org"
options=('!strip')
license=('AGPL3')
depends=('curl' 'gtk4' 'lilv' 'libadwaita' 'libx11' 'jack' 'libsndfile'
'boost' 'json-glib' 'libyaml' 'libsamplerate' 'guile' 'alsa-lib'
'fftw' 'graphviz' 'gtksourceview5' 'breeze-icons' 'zstd'
'rtmidi' 'rtaudio' 'rubberband' 'xdg-utils' 'sdl2' 'xxhash' 'vamp-plugin-sdk'
'wayland-protocols')
makedepends=(
'python' 'gettext' 'sed'
'ninja' 'help2man' 'python-sphinx'
'ladspa' 'lv2')
conflicts=( 'zrythm-git' )
source=( "https://www.zrythm.org/releases/zrythm-$pkgver.tar.gz" )
sha256sums=('SKIP')
_rootdir="zrythm-${pkgver}"
# FIXME reenable tests
build() {
cd $_rootdir
echo "fallback version: @ZRYTHM_PKG_SEMVER_VERSION@"
@MESON_BIN@ build --prefix=/usr -Dtests=false \
-Dpkg_config_path=@LIBRARY_PKG_CONFIG_PATH@:@CARLA_PKG_CONFIG_PATH@ \
-Dmanpage=true \
-Dbuildtype=debugoptimized -Dextra_debug_info=true \
-Dsdl=enabled -Drtaudio=enabled \
-Drtmidi=enabled -Dcarla=enabled \
-Dlsp_dsp=enabled -Dstatic_lsp_dsp=true \
-Dfallback_version=@ZRYTHM_PKG_SEMVER_VERSION@ \
-Dtrial_ver=@TRIAL_TRUE_FALSE@ \
-Dcheck_updates=true \
-Dinstaller_ver=true \
-Dcompletions=false \
-Dcarla_use_cv32_patchbay_variant=true \
-Db_lto=false \
-Dcarla_binaries_dir=@CARLA_FULL_BINS_PATH@ \
-Dforce_fallback_for=gtk4,libadwaita,libpanel
ninja -C build
}
check() {
cd $_rootdir
@MESON_BIN@ test -C build --no-suite=gtksourceview5
build/src/zrythm --version
}
package() {
cd $_rootdir
install -vDm 644 AUTHORS CONTRIBUTING.md CHANGELOG.md README.md THANKS TRANSLATORS \
-t "${pkgdir}/usr/share/doc/zrythm/"
@MESON_BIN@ install -C build --skip-subprojects=libbacktrace,libaudec,reproc,rtmidi,rtaudio,libcyaml,libpanel --destdir="${pkgdir}/"
# copy all subproject libs
if ls "${pkgdir}/usr/lib/"*.so; then
mv ${pkgdir}/usr/lib/*.so* ${pkgdir}/usr/lib/zrythm/
fi
mkdir -p "${pkgdir}/usr/lib/zrythm/carla"
mkdir -p "${pkgdir}/usr/lib/lv2"
for file in carla-discovery-native carla-bridge-lv2-gtk2 carla-bridge-lv2-gtk3 carla-bridge-lv2-qt5 carla-bridge-lv2-x11 carla-bridge-native libcarla_host-plugin.so; do
cp -Lv "@CARLA_FULL_BINS_PATH@/$file" \
${pkgdir}/usr/lib/zrythm/carla/
done
for f in `ls @BUILT_ZPLUGINS_DIR@/lib/lv2`; do
cp -RLv "@BUILT_ZPLUGINS_DIR@/lib/lv2/$f" "${pkgdir}/usr/lib/lv2/Zrythm-$f"
done
if [ -d "${pkgdir}/usr/share/gtksourceview-5" ]; then
mv "${pkgdir}/usr/share/gtksourceview-5" "${pkgdir}/usr/share/zrythm/gtksourceview-5" ;
fi
# remove unused things
rm -rf "${pkgdir}/usr/include"
rm -rf "${pkgdir}/usr/bin"/gtk*
rm -rf "${pkgdir}/usr/bin"/pango*
rm -rf "${pkgdir}/usr/lib"/gtk-4.0
rm -rf "${pkgdir}/usr/lib"/pkgconfig
rm -rf "${pkgdir}/usr/lib"/*.a
rm -rf "${pkgdir}/usr/share"/gettext
rm -rf "${pkgdir}/usr/share"/gtk-4.0
rm -rf "${pkgdir}/usr/share"/glib-2.0/schemas/org.gtk.gtk4*
rm -rf "${pkgdir}/usr/share"/locale/*/LC_MESSAGES/gtk*
rm -rf "${pkgdir}/usr/share"/locale/*/LC_MESSAGES/libadwaita*
rm -rf "${pkgdir}/usr/share"/man/man1/pango*
rm -rf "${pkgdir}/usr/share"/doc
rm -rf "${pkgdir}/usr/share"/vala
rm -rf "${pkgdir}/usr/lib/"libgtksourceview-5*
rm -rf "${pkgdir}/usr/lib/girepository-1.0"
rm -rf "${pkgdir}/usr/share"/icons/hicolor/scalable/actions
}