# Maintainer: bmwalters # NOTE: # This package requires a Unity engine license file to build. # Copy an existing activated license file to Unity_lic.ulf next to PKGBUILD, # or `echo "request" > Unity_lic.ulf` to begin the license activation process. pkgname=moonscraper-chart-editor-git _pkgname=moonscraper-chart-editor pkgver=1.3.1.r358.g928ab6ea pkgrel=1 pkgdesc="A song editor for Guitar Hero style rhythm games made in Unity" url='https://github.com/FireFox2000000/moonscraper-chart-editor' license=(BSD) arch=(x86_64 i686) depends=('mono' 'sdl2' 'ffmpeg' 'libx11' 'gtk3' 'libbass' 'libbass_fx') makedepends=('git' 'unityhub' 'cmake' # runtime dependencies for Unity3d 'desktop-file-utils' 'xdg-utils' 'gcc-libs' 'lib32-gcc-libs' 'gconf' 'nss' 'libgl' 'glu' 'libpng12' 'libxtst' 'libpqxx' 'npm' 'intel-tbb' # used to isolate home directory files modified by Unity3d 'firejail') provides=(moonscraper-chart-editor) backup=("opt/$pkgname/local_events.txt" "opt/$pkgname/global_events.txt" "opt/$pkgname/Custom Resources/settings.ini") source=('git+https://github.com/bmwalters/moonscraper-chart-editor.git#branch=linux-new' "$_pkgname.desktop" 'Unity_lic.ulf::local://Unity_lic.ulf') sha256sums=('SKIP' '393ebe1ee7df6b667d2ff85b82eb1a58c2df7aa8728790cbb260bfa340746a54' 'SKIP') _unity3d_version=2018.4.23f1 _unity3d_changeset=c9cf1a90e812 pkgver() { cd "$_pkgname" printf "%s" "$(git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g')" } prepare() { # Remove vendored libbass in favor of libbass dependency rm -rf "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Bass Audio/Linux/x64" rm -rf "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Bass Audio/Linux/x86" rm -f "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Bass Audio/Linux/x64.meta" rm -f "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Bass Audio/Linux/x86.meta" # We will build this library ourselves rm -f "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Native File Explorer/Linux/x64/libStandaloneFileBrowser.so" rm -f "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Native File Explorer/Linux/x86/libStandaloneFileBrowser.so" } build() { # Build libStandaloneFileBrowser helper library mkdir -p build-sfb && pushd build-sfb cmake "$srcdir/$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Native File Explorer/Linux/Source~" make if [ "${CARCH}" = "i686" ]; then _FBARCH=x86 else _FBARCH=x64 fi popd cp build-sfb/libStandaloneFileBrowser.so "$_pkgname/Moonscraper Chart Editor/Assets/Plugins/Native File Explorer/Linux/$_FBARCH/libStandaloneFileBrowser.so" cp Unity_lic.ulf Unity_lic_physical.ulf # Install Unity via unityhub in firejail to avoid clobbering user's existing unityhub configuration. firejail --noprofile --whitelist="$(pwd)" sh < "$pkgdir/usr/bin/$_pkgname" #!/bin/sh exec "/opt/$pkgname/Moonscraper Chart Editor.$_UNITY_ARCH" "\$@" EOF chmod 755 "$pkgdir/usr/bin/$_pkgname" install $_pkgname.desktop "$pkgdir"/usr/share/applications ln -s "/opt/$pkgname/Moonscraper Chart Editor_Data/Resources/UnityPlayer.png" "$pkgdir"/usr/share/pixmaps/$_pkgname.png # Install licenses install -d "$pkgdir"/usr/share/licenses install -Dm 644 "$_pkgname/LICENSE" "$pkgdir"/usr/share/licenses/$pkgname/LICENSE install -Dm 644 "$_pkgname/Moonscraper Chart Editor/Assets/Documentation/attribution.txt" "$pkgdir"/usr/share/licenses/$pkgname/attribution.txt }