diff options
author | OSAMC | 2024-04-02 14:23:36 +0000 |
---|---|---|
committer | Florian Hülsmann | 2024-04-02 14:23:36 +0000 |
commit | d017fc0ea14fb0fed099789f7585005bb8f61263 (patch) | |
tree | d8c319b7a388ac2f4e2e2ff1ff3527590e14ca23 | |
download | aur-d017fc0ea14fb0fed099789f7585005bb8f61263.tar.gz |
Package midi2-workbench (#399)
* Package midi2-workbench
* cleanup, formatting
* fix makedepends
* use system node-gyp
* disable aarch64 due to missing electron; pin electron to 29
* cleanup, fix repro
* cleanup, fix cross dir hardlinks
* libasound dep
* directly install to /usr/lib
* don't use prebuilt usb binaries
* cleanup, deps
* try switching to electron28
* try switching to electron27
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | PKGBUILD | 68 | ||||
-rw-r--r-- | midi2-workbench.desktop | 11 | ||||
-rwxr-xr-x | midi2-workbench.sh | 3 |
5 files changed, 114 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..44cdc39c8139 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,28 @@ +pkgbase = midi2-workbench + pkgdesc = MIDI 2.0 debugging utility + pkgver = 1.5.6 + pkgrel = 1 + url = https://github.com/midi2-dev/MIDI2.0Workbench + arch = x86_64 + groups = pro-audio + license = MIT + makedepends = alsa-lib + makedepends = node-gyp + makedepends = npm + makedepends = systemd-libs + depends = electron27 + depends = gcc-libs + depends = glibc + source = midi2-workbench-1.5.6.tar.gz::https://github.com/midi2-dev/MIDI2.0Workbench/archive/refs/tags/v1.5.6p.tar.gz + source = midi2-workbench.sh + source = midi2-workbench.desktop + sha256sums = 317fe57e371af684c557c167de0d5a824fe231b58af6a7baece8d565ddf76bf2 + sha256sums = 79191c43cc81a733e4f24f929f5b489bcc10e5c2256dec6507d04fdb34862e3d + sha256sums = fe31fc81dfc72fbbb131c3a187b90cd924948c1bad5a0cbb6421771b92eb2c8c + +pkgname = midi2-workbench + depends = electron27 + depends = gcc-libs + depends = glibc + depends = libasound.so + depends = libudev.so diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..57e7fd90984f --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +pkg/ +src/ +*.tar.* +*.zip diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..ed49fcad3440 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,68 @@ +# Maintainer: OSAMC <https://github.com/osam-cologne/archlinux-proaudio> +# Contributor: Florian Hülsmann <fh@cbix.de> + +_name=MIDI2.0Workbench +pkgname=midi2-workbench +pkgver=1.5.6 +_ver=${pkgver}p +pkgrel=1 +pkgdesc='MIDI 2.0 debugging utility' +arch=(x86_64) +url='https://github.com/midi2-dev/MIDI2.0Workbench' +license=(MIT) +_electron=electron27 +depends=($_electron gcc-libs glibc) +makedepends=(alsa-lib node-gyp npm systemd-libs) +groups=(pro-audio) +source=( + "$pkgname-$pkgver.tar.gz::https://github.com/midi2-dev/$_name/archive/refs/tags/v$_ver.tar.gz" + 'midi2-workbench.sh' + 'midi2-workbench.desktop' +) +sha256sums=('317fe57e371af684c557c167de0d5a824fe231b58af6a7baece8d565ddf76bf2' + '79191c43cc81a733e4f24f929f5b489bcc10e5c2256dec6507d04fdb34862e3d' + 'fe31fc81dfc72fbbb131c3a187b90cd924948c1bad5a0cbb6421771b92eb2c8c') +case $CARCH in + aarch64) _arch=arm64 ;; + x86_64) _arch=x64 ;; + i686) _arch=ia32 ;; +esac + +prepare() { + _npmargs=("--openssl-fips=''" --cache "$srcdir"/npm-cache --no-audit --no-fund) + _electron_ver="$(< /usr/lib/$_electron/version)" + cd $_name-$_ver + # remove unused dependencies + sed -e /serialport/d -e /bonjour-service/d -e /cobs/d -e /sanitize-filename/d -i package.json + HOME="$srcdir"/.electron-gyp npm "${_npmargs[@]}" install --os linux --cpu $_arch + # don't use prebuilt binaries + rm -r node_modules/usb/prebuilds + # use system node-gyp + ln -sf /usr/bin/node-gyp node_modules/.bin/node-gyp +} + +build() { + cd $_name-$_ver + npx "${_npmargs[@]}" electron-builder -- \ + --linux --$_arch --dir \ + -c.electronDist=/usr/lib/$_electron \ + -c.electronVersion=$_electron_ver \ + -c.asar=false \ + --publish=never +} + +package() { + depends+=(libasound.so libudev.so) + install -vDm755 $pkgname.sh "$pkgdir"/usr/bin/$pkgname + install -vDm644 $pkgname.desktop -t "$pkgdir"/usr/share/applications + + cd $_name-$_ver + install -vDm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname + install -vDm644 icon.png "$pkgdir"/usr/share/pixmaps/$pkgname.png + + cd dist/linux-unpacked/resources + # some cleanup + rm -rf app/{midi2usb,winmidi2,*.png} + install -d "$pkgdir"/usr/lib + cp -a app "$pkgdir"/usr/lib/$pkgname +} diff --git a/midi2-workbench.desktop b/midi2-workbench.desktop new file mode 100644 index 000000000000..c7598a284231 --- /dev/null +++ b/midi2-workbench.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=MIDI 2.0 Workbench +Comment=MIDI 2.0 debugging utility +Exec=midi2-workbench +Icon=midi2-workbench +Terminal=false +StartupNotify=false +Categories=Audio; +StartupWMClass=midi2_workbench_public diff --git a/midi2-workbench.sh b/midi2-workbench.sh new file mode 100755 index 000000000000..4bff7df82f5c --- /dev/null +++ b/midi2-workbench.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +exec electron27 /usr/lib/midi2-workbench "$@" |