Github messages for voidlinux
 help / color / mirror / Atom feed
From: JohnGebbie <JohnGebbie@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] New package: vosk-api-0.3.43
Date: Fri, 23 Sep 2022 10:55:18 +0200	[thread overview]
Message-ID: <20220923085518.su8aUBiI_wxFCFk16a2eFTW-hr8sNYDVOjr_jS5Os_I@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-39015@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 745 bytes --]

There is an updated pull request by JohnGebbie against master on the void-packages repository

https://github.com/JohnGebbie/void-packages libvosk
https://github.com/void-linux/void-packages/pull/39015

New package: vosk-api-0.3.43
#### Testing the changes
- I tested the changes in this PR: **briefly**

#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)

Closes https://github.com/void-linux/void-packages/issues/39009


A patch file from https://github.com/void-linux/void-packages/pull/39015.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-libvosk-39015.patch --]
[-- Type: text/x-diff, Size: 7442 bytes --]

From cba751405788444782072bae34e3114310723b99 Mon Sep 17 00:00:00 2001
From: John Gebbie <me@johngebbie.com>
Date: Sat, 3 Sep 2022 13:02:48 +0100
Subject: [PATCH] New package: vosk-api-0.3.43

---
 srcpkgs/vosk-api/patches/openblas.diff | 55 ++++++++++++++++
 srcpkgs/vosk-api/template              | 90 ++++++++++++++++++++++++++
 srcpkgs/vosk-model-small-en-us         |  1 +
 3 files changed, 146 insertions(+)
 create mode 100644 srcpkgs/vosk-api/patches/openblas.diff
 create mode 100644 srcpkgs/vosk-api/template
 create mode 120000 srcpkgs/vosk-model-small-en-us

diff --git a/srcpkgs/vosk-api/patches/openblas.diff b/srcpkgs/vosk-api/patches/openblas.diff
new file mode 100644
index 000000000000..4ae3aac80393
--- /dev/null
+++ b/srcpkgs/vosk-api/patches/openblas.diff
@@ -0,0 +1,55 @@
+--- a/src/matrix/cblas-wrappers.h
++++ b/src/matrix/cblas-wrappers.h
+@@ -383,10 +383,10 @@ inline void mul_elements(
+ // add clapack here
+ #if !defined(HAVE_ATLAS)
+ inline void clapack_Xtptri(KaldiBlasInt *num_rows, float *Mdata, KaldiBlasInt *result) {
+-  stptri_(const_cast<char *>("U"), const_cast<char *>("N"), num_rows, Mdata, result);
++  stptri_(const_cast<char *>("U"), const_cast<char *>("N"), num_rows, Mdata, result, 1, 1);
+ }
+ inline void clapack_Xtptri(KaldiBlasInt *num_rows, double *Mdata, KaldiBlasInt *result) {
+-  dtptri_(const_cast<char *>("U"), const_cast<char *>("N"), num_rows, Mdata, result);
++  dtptri_(const_cast<char *>("U"), const_cast<char *>("N"), num_rows, Mdata, result, 1, 1);
+ }
+ // 
+ inline void clapack_Xgetrf2(KaldiBlasInt *num_rows, KaldiBlasInt *num_cols, 
+@@ -420,7 +420,7 @@ inline void clapack_Xgesvd(char *v, char *u, KaldiBlasInt *num_cols,
+   sgesvd_(v, u,
+           num_cols, num_rows, Mdata, stride,
+           sv, Vdata, vstride, Udata, ustride, 
+-          p_work, l_work, result); 
++          p_work, l_work, result, 1, 1);
+ }
+ inline void clapack_Xgesvd(char *v, char *u, KaldiBlasInt *num_cols,
+                            KaldiBlasInt *num_rows, double *Mdata, KaldiBlasInt *stride,
+@@ -430,25 +430,25 @@ inline void clapack_Xgesvd(char *v, char *u, KaldiBlasInt *num_cols,
+   dgesvd_(v, u,
+           num_cols, num_rows, Mdata, stride,
+           sv, Vdata, vstride, Udata, ustride,
+-          p_work, l_work, result); 
++          p_work, l_work, result, 1, 1);
+ }
+ //
+ void inline clapack_Xsptri(KaldiBlasInt *num_rows, float *Mdata, 
+                            KaldiBlasInt *ipiv, float *work, KaldiBlasInt *result) {
+-  ssptri_(const_cast<char *>("U"), num_rows, Mdata, ipiv, work, result);
++  ssptri_(const_cast<char *>("U"), num_rows, Mdata, ipiv, work, result, 1);
+ }
+ void inline clapack_Xsptri(KaldiBlasInt *num_rows, double *Mdata, 
+                            KaldiBlasInt *ipiv, double *work, KaldiBlasInt *result) {
+-  dsptri_(const_cast<char *>("U"), num_rows, Mdata, ipiv, work, result);
++  dsptri_(const_cast<char *>("U"), num_rows, Mdata, ipiv, work, result, 1);
+ }
+ //
+ void inline clapack_Xsptrf(KaldiBlasInt *num_rows, float *Mdata,
+                            KaldiBlasInt *ipiv, KaldiBlasInt *result) {
+-  ssptrf_(const_cast<char *>("U"), num_rows, Mdata, ipiv, result);
++  ssptrf_(const_cast<char *>("U"), num_rows, Mdata, ipiv, result, 1);
+ }
+ void inline clapack_Xsptrf(KaldiBlasInt *num_rows, double *Mdata,
+                            KaldiBlasInt *ipiv, KaldiBlasInt *result) {
+-  dsptrf_(const_cast<char *>("U"), num_rows, Mdata, ipiv, result);
++  dsptrf_(const_cast<char *>("U"), num_rows, Mdata, ipiv, result, 1);
+ }
+ #else
+ inline void clapack_Xgetrf(MatrixIndexT num_rows, MatrixIndexT num_cols,
diff --git a/srcpkgs/vosk-api/template b/srcpkgs/vosk-api/template
new file mode 100644
index 000000000000..2a99ada6c54e
--- /dev/null
+++ b/srcpkgs/vosk-api/template
@@ -0,0 +1,90 @@
+# Template file for 'vosk-api'
+pkgname=vosk-api
+version=0.3.43
+revision=1
+create_wrksrc=yes
+build_wrksrc="vosk-api-${version}/src"
+_openfst_commit=7dfd808194105162f20084bb4d8e4ee4b65266d5
+_kaldi_commit=6417ac1dece94783e80dfbac0148604685d27579
+build_style=gnu-makefile
+make_use_env=yes
+make_build_args="KALDI_ROOT=../../kaldi-${_kaldi_commit}
+	OPENFST_ROOT=../../kaldi-${_kaldi_commit}/tools/openfst
+	OPENBLAS_ROOT=../../kaldi-${_kaldi_commit}/tools/OpenBLAS/install"
+hostmakedepends="autoconf automake cmake libtool"
+makedepends="blas-devel lapack-devel openblas-devel libgomp-devel"
+short_desc="Offline speech recognition toolkit"
+maintainer="John Gebbie <me@johngebbie.com>"
+license="Apache-2.0"
+homepage="https://alphacephei.com/vosk"
+distfiles="https://github.com/alphacep/vosk-api/archive/v${version}/vosk-api-${version}.tar.gz
+https://github.com/alphacep/kaldi/archive/${_kaldi_commit}.tar.gz
+https://github.com/alphacep/openfst/archive/${_openfst_commit}.tar.gz
+https://alphacephei.com/vosk/models/vosk-model-small-en-us-0.15.zip"
+checksum="50fa82bfbfe3fc5be868237c84ac180eb55da0b65b1803bf022899673afda024
+4e5c08c9c61bbc995e0620321feb0973bb0321442f1bd8f08b47497f55efadda
+a7bac90acb9a12fdfe50c240c9bb730a7bcb5c3b3ac32017c4d27177b059680a
+30f26242c4eb449f948e42cb302dd7a686cb29a3423a8367f99ff41780942498"
+patch_args="-Np1 kaldi-${_kaldi_commit}/src/matrix/cblas-wrappers.h"
+
+post_extract() {
+	cd "${wrksrc}/kaldi-${_kaldi_commit}/src"
+	vsed -i configure -e 's/ -l:libf2c\.a//'
+	cd "${wrksrc}/vosk-api-${version}/src"
+	vsed -i Makefile -e '/libblas\.a \\/ {N; s/ \\.*//}'
+	vsed -i Makefile -e 's/ -lf2c//'
+
+	cd "${wrksrc}/kaldi-${_kaldi_commit}"
+	mkdir -p tools/OpenBLAS/install/lib
+	ln -sf "${XBPS_CROSS_BASE}/usr/include/openblas" tools/OpenBLAS/install/include
+	ln -sf "${XBPS_CROSS_BASE}/usr/lib/libopenblas.a" tools/OpenBLAS/install/lib
+	ln -sf "${XBPS_CROSS_BASE}/usr/lib/libopenblas.so" tools/OpenBLAS/install/lib
+	ln -sf "${XBPS_CROSS_BASE}/usr/lib/liblapack.a" tools/OpenBLAS/install/lib
+	ln -sf "${XBPS_CROSS_BASE}/usr/lib/libblas.a" tools/OpenBLAS/install/lib
+	ln -sf "../../openfst-${_openfst_commit}" tools/openfst
+
+	cd "${wrksrc}"
+	autoreconf -fi "openfst-${_openfst_commit}"
+}
+
+pre_build() {
+	cd "${wrksrc}/openfst-${_openfst_commit}"
+	./configure \
+		${CROSS_BUILD:+--host="${XBPS_CROSS_TRIPLET}"} \
+		--prefix="${wrksrc}/kaldi-${_kaldi_commit}/tools/openfst" \
+		--enable-static \
+		--enable-shared \
+		--enable-far \
+		--enable-ngram-fsts \
+		--enable-lookahead-fsts \
+		--with-pic \
+		--disable-bin
+	make
+	make install
+
+	cd "${wrksrc}/kaldi-${_kaldi_commit}/src"
+	./configure ${CROSS_BUILD:+--host="${XBPS_CROSS_TRIPLET}"} --mathlib=OPENBLAS_CLAPACK --shared --use-cuda=no
+	make online2 lm rnnlm
+}
+
+do_install() {
+	cd "${wrksrc}/vosk-api-${version}/src"
+	vinstall vosk_api.h 644 usr/include
+	vinstall libvosk.so 644 usr/lib
+}
+
+do_check() {
+	cd "${wrksrc}/vosk-api-${version}/c"
+	ln -sf "${PKGDESTDIR}/usr/share/vosk-models/small-en-us" model
+	ln -sf ../python/example/test.wav .
+	make
+	./test_vosk | grep -q '"text" : "zero one eight zero three"'
+}
+
+vosk-model-small-en-us_package() {
+	short_desc="Lightweight english language model"
+	pkg_install() {
+		vmkdir usr/share/vosk-models
+		mv "${wrksrc}/vosk-model-small-en-us-0.15" "${PKGDESTDIR}/usr/share/vosk-models/small-en-us"
+	}
+}
diff --git a/srcpkgs/vosk-model-small-en-us b/srcpkgs/vosk-model-small-en-us
new file mode 120000
index 000000000000..db9953d33676
--- /dev/null
+++ b/srcpkgs/vosk-model-small-en-us
@@ -0,0 +1 @@
+vosk-api
\ No newline at end of file

  parent reply	other threads:[~2022-09-23  8:55 UTC|newest]

Thread overview: 134+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-31 21:38 [PR PATCH] New package: libvosk-0.3.43 JohnGebbie
2022-09-02  7:33 ` JohnGebbie
2022-09-02  9:01 ` JohnGebbie
2022-09-02 18:59 ` JohnGebbie
2022-09-03 12:04 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-03 12:11 ` New package: vosk-api-0.3.43 JohnGebbie
2022-09-03 14:11 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-03 14:12 ` JohnGebbie
2022-09-03 14:13 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-03 14:14 ` JohnGebbie
2022-09-03 14:14 ` JohnGebbie
2022-09-03 20:52 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-04  8:26 ` JohnGebbie
2022-09-17 13:05 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-17 13:09 ` JohnGebbie
2022-09-18 11:00 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-21 15:53 ` JohnGebbie
2022-09-22  8:53 ` JohnGebbie
2022-09-22  9:26 ` [PR REVIEW] " paper42
2022-09-22  9:26 ` paper42
2022-09-22 14:39 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-22 14:43 ` JohnGebbie
2022-09-22 15:19 ` [PR REVIEW] " JohnGebbie
2022-09-22 18:16 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-22 19:32 ` JohnGebbie
2022-09-22 19:38 ` JohnGebbie
2022-09-22 20:31 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-22 20:33 ` JohnGebbie
2022-09-22 20:50 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-22 20:50 ` JohnGebbie
2022-09-23  8:55 ` JohnGebbie [this message]
2022-09-23  9:14 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-23 11:30 ` JohnGebbie
2022-09-23 17:21 ` JohnGebbie
2022-09-23 18:23 ` JohnGebbie
2022-09-26 22:16 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-26 22:18 ` JohnGebbie
2022-09-28 15:44 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-28 15:44 ` JohnGebbie
2022-09-28 15:53 ` JohnGebbie
2022-09-29 20:24 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-29 20:30 ` JohnGebbie
2022-09-30  9:15 ` JohnGebbie
2022-09-30 14:27 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-30 14:27 ` JohnGebbie
2022-09-30 14:30 ` JohnGebbie
2022-09-30 19:14 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-30 19:21 ` JohnGebbie
2022-09-30 19:47 ` JohnGebbie
2022-09-30 19:54 ` [PR PATCH] [Updated] " JohnGebbie
2022-09-30 21:15 ` JohnGebbie
2022-10-01 10:26 ` JohnGebbie
2022-10-02 16:27 ` JohnGebbie
2022-10-03 11:19 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-03 11:21 ` JohnGebbie
2022-10-03 12:39 ` JohnGebbie
2022-10-04 19:17 ` JohnGebbie
2022-10-08 12:13 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-08 12:15 ` JohnGebbie
2022-10-08 12:21 ` JohnGebbie
2022-10-08 14:32 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-08 15:52 ` JohnGebbie
2022-10-08 16:24 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-08 16:25 ` JohnGebbie
2022-10-08 16:33 ` JohnGebbie
2022-10-09 10:37 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-09 10:38 ` JohnGebbie
2022-10-09 10:46 ` JohnGebbie
2022-10-26 15:57 ` JohnGebbie
2022-10-26 15:57 ` JohnGebbie
2022-10-26 15:57 ` JohnGebbie
2022-10-26 15:58 ` JohnGebbie
2022-10-26 15:58 ` JohnGebbie
2022-10-26 15:58 ` JohnGebbie
2022-10-26 15:59 ` JohnGebbie
2022-10-26 15:59 ` JohnGebbie
2022-10-26 15:59 ` JohnGebbie
2022-10-26 16:00 ` JohnGebbie
2022-10-26 16:00 ` JohnGebbie
2022-10-26 16:00 ` JohnGebbie
2022-10-26 16:01 ` JohnGebbie
2022-10-27  9:59 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-27 10:18 ` JohnGebbie
2022-10-27 21:37 ` JohnGebbie
2022-10-28  8:33 ` JohnGebbie
2022-10-28  9:43 ` JohnGebbie
2022-10-28 17:01 ` [PR PATCH] [Updated] " JohnGebbie
2022-10-28 18:49 ` JohnGebbie
2022-10-28 20:15 ` JohnGebbie
2022-10-28 20:45 ` JohnGebbie
2022-10-28 21:42 ` JohnGebbie
2022-10-29  8:41 ` JohnGebbie
2022-10-29 11:45 ` JohnGebbie
2022-10-29 12:07 ` JohnGebbie
2022-10-29 14:09 ` JohnGebbie
2022-11-09 17:33 ` JohnGebbie
2022-11-14 22:54 ` [PR REVIEW] " paper42
2022-11-14 22:54 ` paper42
2022-11-14 22:54 ` paper42
2022-11-14 22:54 ` paper42
2022-11-14 22:54 ` paper42
2022-11-14 22:54 ` paper42
2022-11-14 22:54 ` paper42
2022-11-15 11:04 ` JohnGebbie
2022-11-15 13:38 ` [PR PATCH] [Updated] " JohnGebbie
2022-11-15 14:23 ` [PR REVIEW] " JohnGebbie
2022-11-15 14:24 ` JohnGebbie
2022-11-15 14:44 ` [PR PATCH] [Updated] " JohnGebbie
2022-11-15 14:54 ` [PR REVIEW] " JohnGebbie
2022-12-03 18:32 ` [PR PATCH] [Updated] " JohnGebbie
2022-12-03 18:37 ` JohnGebbie
2022-12-03 18:38 ` [PR REVIEW] " JohnGebbie
2022-12-03 18:43 ` JohnGebbie
2022-12-03 18:44 ` JohnGebbie
2022-12-03 18:47 ` JohnGebbie
2022-12-03 18:48 ` JohnGebbie
2022-12-03 20:52 ` JohnGebbie
2022-12-03 21:22 ` [PR PATCH] [Updated] " JohnGebbie
2022-12-03 21:26 ` JohnGebbie
2022-12-04  8:19 ` [PR PATCH] [Updated] " JohnGebbie
2022-12-04  8:21 ` JohnGebbie
2022-12-04 10:25 ` JohnGebbie
2022-12-04 12:46 ` [PR REVIEW] " paper42
2022-12-04 12:46 ` paper42
2022-12-04 12:46 ` paper42
2022-12-04 12:46 ` paper42
2022-12-04 12:46 ` paper42
2022-12-04 13:52 ` [PR PATCH] [Updated] " JohnGebbie
2022-12-04 13:55 ` [PR REVIEW] " JohnGebbie
2022-12-04 14:04 ` paper42
2022-12-04 14:33 ` [PR PATCH] [Updated] " JohnGebbie
2022-12-04 16:09 ` JohnGebbie
2022-12-04 16:10 ` [PR PATCH] [Merged]: " paper42
2022-12-04 16:11 ` JohnGebbie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220923085518.su8aUBiI_wxFCFk16a2eFTW-hr8sNYDVOjr_jS5Os_I@z \
    --to=johngebbie@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).