summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorOvenoboyo2022-10-30 03:50:57 +0530
committerOvenoboyo2022-10-30 03:50:57 +0530
commitad2aab5229480c6cc1bafd4df01a0ae22c7c4e43 (patch)
tree81528b669bfb0ba360c4be3ff50bdffe20708a8b
parentc171963ff3971bc777de18f0a4c311c0854eb14b (diff)
downloadaur-ad2aab5229480c6cc1bafd4df01a0ae22c7c4e43.tar.gz
Build from source properly
Signed-off-by: Ovenoboyo <ovenoboyo@gmail.com>
-rwxr-xr-x.SRCINFO6
-rwxr-xr-xPKGBUILD40
-rw-r--r--builder-args.sh9
3 files changed, 35 insertions, 20 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4b305789529b..27b884668451 100755
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,11 +1,11 @@
pkgbase = moosync
pkgdesc = A simple music player
pkgver = 6.0.0
- pkgrel = 4
+ pkgrel = 5
url = https://github.com/Moosync/Moosync
arch = any
license = GPL3
- makedepends = nodejs
+ makedepends = nvm
makedepends = yarn
makedepends = node-gyp
depends = electron
@@ -15,9 +15,11 @@ pkgbase = moosync
source = moosync-6.0.0.tar::https://github.com/Moosync/Moosync/archive/v6.0.0.tar.gz
source = moosync
source = moosync.desktop
+ source = builder-args.sh
sha256sums = 59f11f9e78486423dae41a54f553ef6658360a5b9df298b35b65b8093f065fb0
sha256sums = 2c686af970df25a67d9451f995e79f766063fc947373e452f08afe5475e72d2b
sha256sums = 36867efee6f9a491e64979ed329ce87f2136da2afcce4c9ef5696a9f2538d9ba
sha256sums = 4b63fa17717239db8a87ebeae1fdd96c5318b71d7d851d6c5a4f337793d3fecd
+ sha256sums = bb106abfddfa388cdd9953b034e3176f87eac636932d793b2f5293576cc017bb
pkgname = moosync
diff --git a/PKGBUILD b/PKGBUILD
index d813a10fb3cd..78e3029104f2 100755
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,54 +2,58 @@
pkgname=moosync
pkgver=6.0.0
-pkgrel=4
+pkgrel=5
pkgdesc='A simple music player'
arch=('any')
url='https://github.com/Moosync/Moosync'
license=('GPL3')
provides=("${pkgname}")
depends=('electron' 'libvips')
-makedepends=('nodejs' 'yarn' 'node-gyp')
-source=("${pkgname}-${pkgver}-prebuilt.tar::https://github.com/Moosync/Moosync/releases/download/v${pkgver}/Moosync-${pkgver}-linux-x64.pacman" "${pkgname}-${pkgver}.tar::https://github.com/Moosync/Moosync/archive/v${pkgver}.tar.gz" moosync moosync.desktop)
+makedepends=('nvm' 'yarn' 'node-gyp')
+source=("${pkgname}-${pkgver}-prebuilt.tar::https://github.com/Moosync/Moosync/releases/download/v${pkgver}/Moosync-${pkgver}-linux-x64.pacman" "${pkgname}-${pkgver}.tar::https://github.com/Moosync/Moosync/archive/v${pkgver}.tar.gz" moosync moosync.desktop builder-args.sh)
sha256sums=('59f11f9e78486423dae41a54f553ef6658360a5b9df298b35b65b8093f065fb0'
'2c686af970df25a67d9451f995e79f766063fc947373e452f08afe5475e72d2b'
'36867efee6f9a491e64979ed329ce87f2136da2afcce4c9ef5696a9f2538d9ba'
- '4b63fa17717239db8a87ebeae1fdd96c5318b71d7d851d6c5a4f337793d3fecd')
+ '4b63fa17717239db8a87ebeae1fdd96c5318b71d7d851d6c5a4f337793d3fecd'
+ 'bb106abfddfa388cdd9953b034e3176f87eac636932d793b2f5293576cc017bb')
_sourcedirectory="Moosync-$pkgver"
build() {
cd "$srcdir/$_sourcedirectory/"
+ # Deactivate any pre-loaded nvm, and make sure we use our own in the current source directory
+ which nvm >/dev/null 2>&1 && nvm deactivate && nvm unload
+ export NVM_DIR="${srcdir}/.nvm"
+ source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
+
+ nvm install 18
+ nvm use 18
+
# Remove electron from package.json
sed -E -i 's|("electron": ").*"|\1'"$(cat "/usr/lib/electron/version")"'"|' 'package.json'
yarn install --ignore-engines || true
- echo "Ignore build failure with better-sqlite3"
- yarn postinstall
+ . "$srcdir/builder-args.sh"
+ yarn electron:build -- $ELECTRON_BUILDER_ARCH_ARGS --linux --dir
}
package() {
- cd ${srcdir}
-
- local _prebuiltpath="${srcdir}/opt/Moosync"
+ install -d "${pkgdir}/opt/Moosync/"
- install -d "${pkgdir}/opt/Moosync/resources/app.asar.unpacked/node_modules"
+ # Move compiled app to pkgdir
+ mv ${srcdir}/${_sourcedirectory}/dist_electron/linux*unpacked/* "${pkgdir}/opt/Moosync/"
- cd "${srcdir}/${_sourcedirectory}/node_modules"
- find . -name '*.node' -exec cp --parents \{\} /"${pkgdir}/opt/Moosync/resources/app.asar.unpacked/node_modules" \;
+ ls "${pkgdir}/opt/Moosync/"
- cp -R ${srcdir}/${_sourcedirectory}/node_modules/better-sqlite3 "${pkgdir}/opt/Moosync/resources/app.asar.unpacked/node_modules/"
- cp -R ${srcdir}/${_sourcedirectory}/node_modules/sharp "${pkgdir}/opt/Moosync/resources/app.asar.unpacked/node_modules/"
- cp -R ${srcdir}/${_sourcedirectory}/node_modules/media-controller "${pkgdir}/opt/Moosync/resources/app.asar.unpacked/node_modules/"
- cp -R "${_prebuiltpath}/resources/app.asar" "${pkgdir}/opt/Moosync/resources/app.asar"
- cp ${_prebuiltpath}/resources/app.asar.unpacked/*.js ${pkgdir}/opt/Moosync/resources/app.asar.unpacked/
+ rm -f "${pkgdir}/opt/Moosync/resources/app.asar"
+ cp "${srcdir}/opt/Moosync/resources/app.asar" "${pkgdir}/opt/Moosync/resources/"
+ # Install icons
for _size in 16 32 48 256 512; do
install -Dm644 "${srcdir}/${_sourcedirectory}/build/icons/${_size}x${_size}.png" "$pkgdir/usr/share/icons/hicolor/${_size}x${_size}/apps/moosync.png"
done
- cd "$srcdir"
install -d "${pkgdir}/usr/bin"
install "moosync" "${pkgdir}/usr/bin/moosync"
diff --git a/builder-args.sh b/builder-args.sh
new file mode 100644
index 000000000000..bece7bf92a75
--- /dev/null
+++ b/builder-args.sh
@@ -0,0 +1,9 @@
+if [[ ${CARCH} == "aarch64" ]]; then
+ export ELECTRON_BUILDER_ARCH_ARGS="--arm64"
+elif [[ ${CARCH} == "armv7h" ]]; then
+ export ELECTRON_BUILDER_ARCH_ARGS="--armv7l"
+elif [[ ${CARCH} == "i686" ]]; then
+ export ELECTRON_BUILDER_ARCH_ARGS="--ia32"
+elif [[ ${CARCH} == "x86_64" ]]; then
+ export ELECTRON_BUILDER_ARCH_ARGS="--x64"
+fi \ No newline at end of file