-
-
Save joefiorini/a92da74aee45ea2e244ff5e46c4e7c7a to your computer and use it in GitHub Desktop.
Bitwig Beta 4.3 PKGBUILD
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Maintainer: Jonathon Fernyhough <jonathon at_m2x+dev> | |
# Contributor: Aleksej Komarov <[email protected]> | |
# Contributor: MKzero <info[at]linux-web-development[dot]de> | |
# Contributor: Evergreen <evergreenubuntu[at]gmail[dot]com> | |
# Upstream: Bitwig GmbH <[email protected]> | |
# Original PKGBUILD taken wholesale from stylemistake's bitwig-studio package | |
# JF added a prepare() to allow side-by-side installation with release version | |
pkgname=bitwig-studio-beta | |
_pkgname=bitwig-studio | |
_pkgver=4.3 | |
pkgver=${_pkgver}beta2 | |
pkgrel=1 | |
pkgdesc='Digital audio workstation for music production, remixing and live performance' | |
arch=('x86_64') | |
url='https://www.bitwig.com/' | |
license=('custom') | |
# Deps from bitwig-studio package | |
#depends=('jack' 'xdg-utils' 'zenity' 'xcb-util-wm' 'libbsd') | |
# Deps as suggested by namcap... | |
makedepends=('ostree') | |
depends=('gtk3' 'lib32-libx11' 'lib32-libxkbcommon' 'libxkbcommon-x11' 'xcb-util' 'xcb-util-wm') | |
optdepends=('alsa-lib' 'jack' 'oss' 'ffmpeg: MP3 support') | |
provides=('bitwig-studio') | |
options=(!strip) | |
source=("$_pkgname-$pkgver.flatpak::https://www.bitwig.com/dl/?id=478&os=installer_linux") | |
b2sums=('3b86d02d369508c68d43f1ca3ee8bc03e72e7c32376db2a95d6c468f3ac0e4d8a166a9b50d4b8ab71e1a5a6093a7fe246b3f0d6ee2a2be5e0da341efb3584bc3') | |
prepare() { | |
msg2 "Extracting files from flatpak ..." | |
_ostree_repo=tmp-repo | |
_extract_dir="extracted" | |
rm -rf "$_ostree_repo" | |
rm -rf "$_extract_dir" | |
ostree init --repo="$_ostree_repo" --mode=bare-user-only | |
ostree --repo="$_ostree_repo" static-delta apply-offline "$_pkgname-$pkgver.flatpak" -v | |
_commit="$(find "$_ostree_repo" -name '*.commit' | head -n1 | sed 's,/[^/]*$,,' | sed 's,.*/,,')" | |
ostree --repo="$_ostree_repo" checkout "$_commit" "$_extract_dir" | |
# Move files from flatpak into opt | |
_optdir="${srcdir}/opt/${pkgname}" | |
mkdir -p "$_optdir" | |
cp -r "$_extract_dir"/files/* "$_optdir" | |
cd "$_optdir" | |
# Move out files that belong in /usr/share | |
mkdir -p "${srcdir}/usr/share" | |
mv share/applications "${srcdir}/usr/share" | |
mv share/icons "${srcdir}/usr/share" | |
mv share/mime "${srcdir}/usr/share" | |
# Remove unnecessary flatpak related files | |
rm -rf share | |
rm -f manifest.json | |
rm -rf extensions | |
# Patch files to avoid conflicts with stable bitwig studio install | |
cd "${srcdir}/usr/share/" | |
mv applications/com.bitwig.BitwigStudio.desktop applications/com.bitwig.BitwigStudioBeta.desktop | |
sed -i "s|${_pkgname}|${pkgname}|g; | |
s|Bitwig Studio|Bitwig Studio Beta|g; | |
s|BitwigStudio|BitwigStudioBeta|g; | |
12s|bitwig-|bitwig-beta-|g;" applications/com.bitwig.BitwigStudioBeta.desktop | |
mv mime/packages/com.bitwig.BitwigStudio.xml mime/packages/com.bitwig.BitwigStudioBeta.xml | |
sed -i "s|bitwig-|bitwig-beta-|g; | |
s|BitwigStudio|BitwigStudioBeta|g; | |
s|Studio |Studio Beta |g" mime/packages/com.bitwig.BitwigStudioBeta.xml | |
cd icons/hicolor/ | |
for icon in 48x48/apps/*.png 128x128/apps/*png scalable/apps/*.svg; do | |
mv "$icon" "${icon/Studio/StudioBeta}" | |
done | |
for icon in scalable/mimetypes/*.svg; do | |
mv "$icon" "${icon/Studio.application-bitwig/StudioBeta.application-bitwig-beta}" | |
done | |
# Make link to binary in /usr/bin | |
mkdir -p "${srcdir}/usr/bin" | |
ln -s /opt/${pkgname}/${_pkgname} "${srcdir}/usr/bin/${pkgname}" | |
} | |
package() { | |
mv ${srcdir}/{opt,usr} ${pkgdir}/ | |
# Install license | |
install -D -m644 ${pkgdir}/opt/${pkgname}/EULA.rtf ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment