From 2e73b5bdaf478f60c1c155f1c3a7d485ded62e78 Mon Sep 17 00:00:00 2001 From: John Gebbie Date: Thu, 1 Jun 2023 18:46:13 +0100 Subject: [PATCH] New package: numen-0.7 --- srcpkgs/numen/files/numen/conf | 7 +++++ srcpkgs/numen/files/numen/run | 11 ++++++++ srcpkgs/numen/template | 49 ++++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 srcpkgs/numen/files/numen/conf create mode 100755 srcpkgs/numen/files/numen/run create mode 100644 srcpkgs/numen/template diff --git a/srcpkgs/numen/files/numen/conf b/srcpkgs/numen/files/numen/conf new file mode 100644 index 000000000000..2d814396e2d9 --- /dev/null +++ b/srcpkgs/numen/files/numen/conf @@ -0,0 +1,7 @@ +# Example to run the service as a specific user: + +# NUMENUSER=john +# NUMENGROUP="$NUMENUSER" +# NUMENHOME="/home/$NUMENUSER" +# export HOME="$NUMENHOME" +# export XAUTHORITY="/run/user/$(id -u "$NUMENUSER")/Xauthority" diff --git a/srcpkgs/numen/files/numen/run b/srcpkgs/numen/files/numen/run new file mode 100755 index 000000000000..da29f62904da --- /dev/null +++ b/srcpkgs/numen/files/numen/run @@ -0,0 +1,11 @@ +#!/bin/sh +exec 2>&1 +[ -r ./conf ] && . ./conf +: ${NUMENUSER:=_numen} +: ${NUMENGROUP:=_numen} +if [ -z "$NUMENHOME" ]; then + mkdir -p /usr/share/numen + chown "$NUMENUSER:$NUMENGROUP" /usr/share/numen + export XDG_DATA_HOME=/usr/share +fi +exec chpst -u "$NUMENUSER:$NUMENGROUP:input:audio" numen ${OPTS} diff --git a/srcpkgs/numen/template b/srcpkgs/numen/template new file mode 100644 index 000000000000..e599f5f607dd --- /dev/null +++ b/srcpkgs/numen/template @@ -0,0 +1,49 @@ +# Template file for 'numen' +pkgname=numen +version=0.123 #TODO +revision=1 +build_style=go +go_import_path="git.sr.ht/~geb/numen" +go_ldflags="-X main.Version=${version} + -X main.DefaultModelPackage=vosk-model-small-en-us + -X 'main.DefaultModelPaths=/usr/local/share/vosk-models/small-en-us /usr/share/vosk-models/small-en-us' + -X main.DefaultPhrasesDir=/etc/numen/phrases" +hostmakedepends="scdoc" +makedepends="vosk-api libgomp-devel" +depends="alsa-utils dotool>=1.1" +short_desc="Voice control for handsfree computing" +maintainer="John Gebbie " +license="GPL-3.0-only" +homepage="https://numenvoice.com" +changelog="https://git.sr.ht/~geb/numen/blob/master/CHANGELOG.md" +distfiles="https://git.sr.ht/~geb/numen/archive/${version}.tar.gz" +checksum=6109274a4d9b411ba5e9b8c7d1b52aa764fa1b25162ee79e52bff9594174532f +conf_files="/etc/sv/numen/conf" + +if [ "$XBPS_TARGET_LIBC" = musl ]; then + makedepends+=" libexecinfo-devel" +fi + +system_accounts="_numen" + +pre_build() { + # for the vosk-api package (openblas) + export CGO_LDFLAGS="$CGO_LDFLAGS -fopenmp" + + if [ "$XBPS_TARGET_LIBC" = musl ]; then + # for the vosk-api package (openfst) + export CGO_LDFLAGS="$CGO_LDFLAGS -lexecinfo" + fi +} + +do_check() { + ln -s "${GOPATH}"/bin/**/numen numen + cd test + ./test.sh +} + +post_install() { + NUMEN_SKIP_CHECKS=yes NUMEN_SKIP_BINARY=yes \ + ./install-numen.sh "${DESTDIR}" /usr/bin + vsv numen +}