pkgname=meloasr pkgver=0.1.17 pkgrel=1 pkgdesc='Web-backed voice input for Fcitx5' arch=('x86_64') url='https://github.com/Melorise/MeloASR' license=('MPL2') depends=('fcitx5' 'gtk3' 'nss' 'libxss' 'mesa' 'alsa-lib') makedepends=('nodejs' 'pnpm' 'cmake' 'gcc' 'nlohmann-json') source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz") sha256sums=('SKIP') _source_dir="MeloASR-${pkgver}" build() { cd "${srcdir}/${_source_dir}" pnpm install --frozen-lockfile pnpm run build:linux:dir cmake -S linux/fcitx5 -B build/fcitx5 \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr cmake --build build/fcitx5 --parallel } check() { cd "${srcdir}/${_source_dir}" pnpm test ctest --test-dir build/fcitx5 --output-on-failure } package() { cd "${srcdir}/${_source_dir}" install -d "${pkgdir}/opt/meloasr" cp -a release/linux-unpacked/. "${pkgdir}/opt/meloasr/" install -Dm755 packaging/assets/meloasr-wrapper "${pkgdir}/usr/bin/meloasr" install -Dm644 packaging/assets/meloasr.desktop \ "${pkgdir}/usr/share/applications/meloasr.desktop" install -Dm644 packaging/assets/meloasr-autostart.desktop \ "${pkgdir}/etc/xdg/autostart/meloasr.desktop" install -Dm644 packaging/assets/meloasr.metainfo.xml \ "${pkgdir}/usr/share/metainfo/meloasr.metainfo.xml" install -Dm644 src/assets/logo.png \ "${pkgdir}/usr/share/pixmaps/meloasr.png" DESTDIR="${pkgdir}" cmake --install build/fcitx5 }