gpo.zugaina.org

Search Portage & Overlays:

sci-ml/sherpa-onnx

Speech-to-text, TTS, speaker diarization etc. using onnxruntime

Screenshots

  • sherpa-onnx-1.13.8
    ~amd64 ~arm64
    cuda +portaudio +python +tts +websocket python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14

    View      Download      Browse     License: Apache-2.0   
    Overlay: stuff
  • sherpa-onnx-1.13.8
    ~amd64
    cuda +portaudio +python +tts +websocket python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14

    View      Download      Browse     License: Apache-2.0   
    Overlay: bentoo
  • sherpa-onnx-1.13.7
    ~amd64 ~arm64
    cuda +portaudio +python +tts +websocket python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14

    View      Download      Browse     License: Apache-2.0   
    Overlay: stuff
  • sherpa-onnx-1.13.6
    ~amd64 ~arm64
    cuda +portaudio +python +tts +websocket python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14

    View      Download      Browse     License: Apache-2.0   
    Overlay: stuff

ChangeLog

commit 9dd526505256d16cd9e07255fca1e68c74986b0b
Author: lucascouts <lucascs@protonmail.com>
Date: Thu Sep 10 12:06:51 2026 -0300

add(metadata/{md5-cache/dev-util/spirv-tools-1.4.357.0_p20260910, md5-cache/sci-ml/sherpa-onnx-1.13.8}), mod(.autoupdate/packages.toml), up(dev-util/spirv-tools-1.4.357.0_p20260909 -> 1.4.357.0_p20260910, sci-ml/sherpa-onnx-1.13.7 -> 1.13.8)

commit 1693e3c5788a4b45298468b62c93cc443a17b568
Author: lucascouts <lucascs@protonmail.com>
Date: Tue Sep 1 12:42:14 2026 -0300

add(metadata/{md5-cache/app-editors/zed-1.19.0_pre20260901, md5-cache/dev-lang/dart-3.13.3, md5-cache/dev-libs/sentry-native-0.16.5, md5-cache/dev-util/codex-0.152.0, md5-cache/dev-util/codex-bin-0.152.0, md5-cache/dev-util/codex-desktop-bin-26.831.20005, md5-cache/dev-util/spirv-tools-1.4.357.0_p20260901, md5-cache/dev-util/trivy-0.74.0-r1, md5-cache/kde-plasma/kdeplasma-addons-6.7.4-r1, md5-cache/net-misc/postman-bin-12.26.1, md5-cache/sci-ml/sherpa-onnx-1.13.7, md5-cache/www-client/librewolf-bin-155.0_p1, md5-cache/x11-base/xwayland-26.0.99.901}), mod(metadata/{md5-cache/app-office/openoffice-bin-4.1.16, md5-cache/dev-lang/ghc-9.14.1, md5-cache/dev-ruby/erb-6.0.7, md5-cache/media-gfx/imagemagick-7.1.2.30, md5-cache/media-libs/dav2d-0.0.1, md5-cache/sys-process/nohang-9999}, .autoupdate/packages.toml), up(app-editors/zed-1.19.0_pre20260831 -> 1.19.0_pre20260901, dev-lang/dart-3.13.2 -> 3.13.3, dev-libs/sentry-native-0.16.4 -> 0.16.5, dev-util/codex{,-bin}-0.151.0 -> 0.152.0, net-misc/postman-bin-12.26.0 -> 12.26.1, sci-ml/sherpa-onnx-1.13.6 -> 1.13.7, www-client/librewolf-bin-154.0.1_p3 -> 155.0_p1)

commit 2c7775d77dfff8468e4c7ebf4fe1f7eec0911f1f
Author: lucascouts <lucascs@protonmail.com>
Date: Tue Aug 18 12:49:44 2026 -0300

add(metadata/{md5-cache/app-misc/claude-desktop-bin-1.32352.1, md5-cache/dev-db/sqlcipher-4.18.0, md5-cache/dev-lang/dart-3.13.1, md5-cache/dev-python/conda-26.7.1, md5-cache/media-plugins/frei0r-plugins-3.4.0, md5-cache/net-misc/postman-bin-12.24.1, md5-cache/sci-ml/llama-cpp-0_pre10488, md5-cache/sci-ml/sherpa-onnx-1.13.6, md5-cache/sys-kernel/linux-firmware-20260818, md5-cache/www-client/librewolf-bin-154.0_p2}), mod(.autoupdate/packages.toml), up(app-misc/claude-desktop-bin-1.32352.0 -> 1.32352.1, dev-db/sqlcipher-4.17.0 -> 4.18.0, dev-lang/dart-3.13.0 -> 3.13.1, dev-python/conda-26.7.0 -> 26.7.1, media-plugins/frei0r-plugins-3.3.2 -> 3.4.0, net-misc/postman-bin-12.23.8 -> 12.24.1, sci-ml/{llama-cpp-0_pre10472 -> 0_pre10488, sherpa-onnx-1.13.5-r1 -> 1.13.6}, sys-kernel/linux-firmware-20260814 -> 20260818, www-client/librewolf-bin-153.0.4_p1 -> 154.0_p2)

commit 3dcadfed6620bb769ad4c3ce2cc7f2de6cb46d32
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Aug 16 10:20:06 2026 -0300

fix(sci-ml/{sherpa-onnx-1.13.5-r1, llama-swap-250-r1}): strip build paths from binaries

Both packages baked the portage sandbox path into what they install: 113
occurrences in sherpa-onnx, 305 in llama-swap. In sherpa-onnx it was not merely
debug metadata -- upstream uses __FILE__ in its message macros, so
`sherpa-onnx --help` opened by printing
/var/tmp/portage/sci-ml/sherpa-onnx-1.13.5/work/.../parse-options.cc:415
straight at the user.

sherpa-onnx: append -ffile-prefix-map over $, not $ -- the vendored
dependencies configure under $_build/_deps and leak their own paths, so
remapping the source tree alone would have cleared about half of them.
-ffile-prefix-map rather than -fdebug-prefix-map because the latter leaves the
user-visible strings untouched, and those are the ones that matter here. The
target path follows Gentoo's split-debug convention so a debugger still
resolves sources under FEATURES=splitdebug.

llama-swap: -trimpath on go build.

Verified rather than assumed:
- the mechanism, on gcc 16.2.0: a test file's __FILE__ is rewritten and the
original path disappears from the compiled binary
- llama-swap rebuilt with the flag: 305 occurrences -> 0, and it still runs
- sherpa-onnx configure: -ffile-prefix-map lands in CMAKE_CXX_FLAGS and
CMAKE_C_FLAGS. Its full rebuild costs hours and is left to the gate, so
113 -> 0 is expected but NOT yet observed. Do not record it as proven
until the gate says so.

Revbumped because the installed binary changes; without it, anyone who already
merged these keeps the leaking build forever. Both gates must be re-run.

This is an improvement on ::gentoo's baseline rather than a rule being
enforced: docker ships 1327 such paths and podman 2759.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

commit 81ab2102426e32af91802191d0f866f0dd2383f3
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Aug 16 08:46:09 2026 -0300

fix(sci-ml/{sherpa-onnx-1.13.5, koboldcpp-1.118.1}): guard cuda.eclass src_prepare

sci-ml/sherpa-onnx failed the merge gate in the PREPARE phase, for every user
without the CUDA toolkit installed -- including USE=-cuda:

Could not execute cuda-config
ERROR: failed (prepare phase): cuda-config not found
Called cuda_src_prepare -> cuda_sanitize -> cuda_gccdir -> die

cuda.eclass does `EXPORT_FUNCTIONS src_prepare`, and its cuda_src_prepare calls
cuda_sanitize unconditionally. sherpa-onnx defined no src_prepare of its own,
so it inherited the eclass one with nothing gating it. The package was
uninstallable without CUDA -- the whole default configuration.

Introduced by this branch: the adopted ebuild hardcoded
CUDAHOSTCXX=/usr/bin/g++-15, and replacing that with cuda_gccdir (correct on
its own) meant inheriting cuda.eclass, which brought the exported phase along
unnoticed. pkgcheck reports nothing: it does not run phases.

sherpa-onnx now defines src_prepare calling cmake_src_prepare (not `default` --
the cmake eclass tracks state that cmake_src_configure depends on) and
cuda_src_prepare only under `use cuda`.

koboldcpp is fixed for the mirror-image defect. Its own src_prepare overrode
the exported one, which is why it passed the gate, but it therefore never ran
cuda_sanitize at all -- so a USE=cuda build passed unsanitized NVCCFLAGS
straight to nvcc. Now calls cuda_src_prepare under the same guard. Its
cuda_gccdir/cuda_add_sandbox uses were already correctly inside `use cuda`.

Verified without root via `ebuild ... clean prepare`: both packages report
"Source prepared." with USE=-cuda. koboldcpp's two gate legs must be re-run,
since this touches a phase they exercised.

Gate results so far: llama-swap 2/2 legs merged, koboldcpp 2/2 merged,
sherpa-onnx 0/2 -- this is the defect it found.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

commit 494447b3a9e9c2b9a276dfcfc7f8346b92fa186d
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Aug 16 07:14:48 2026 -0300

add(sci-ml/{koboldcpp-1.118.1, sherpa-onnx-1.13.5, llama-swap-250}), mod(.autoupdate/packages.toml)

Story 003 Tasks 1, 3 and 4. NOT MERGED ANYWHERE: authoring and pkgcheck only.
No emerge has been run against any of the three, which is why this sits on a
branch instead of master. Story 002 recorded what skipping that gate costs --
six defects shipped, two of them invisible to pkgcheck until resolution was
attempted. The gate commands are in each task in .epic/stories/003-*/tasks.md.

koboldcpp -- adapted from istitov/stuff sci-misc/koboldcpp.
LLAMA_PORTABLE=1 keeps the Makefile off -march=native; cpu_flags_x86_* wired
to its three tiers via LLAMA_NOAVX1/LLAMA_NOAVX2. cuda and rocm each get
their own emake run: a single invocation defines ggml-cuda.o twice and the
HIP recipes silently override the CUDA ones, so USE="cuda rocm" would have
produced a "cuBLAS" library built by hipcc. GPU_TARGETS is set explicitly
because upstream's default appends $(shell amdgpu-arch), sizing the package
by the build host's GPU. Five prebuilt blobs beyond the documented glslc
pair are removed. pkgcheck: zero findings.

sherpa-onnx -- adapted from istitov/stuff, links sci-libs/onnxruntime rather
than bundling. 17 distfiles pre-staged so CMake FetchContent resolves
locally; the .zip pins stay .zip because the cmake modules match those
filenames literally and fall through to the network otherwise (verified in
the 1.13.5 sources; pkgcheck's TarballAvailable is a false positive here and
says so inline). Dropped QA_PREBUILT, which claimed to cover prebuilt
libraries that this ebuild in fact compiles. Fixed a doubled Prefix in the
site-packages relocation: python_get_sitedir already carries EPREFIX and was
being passed to dodir and concatenated with ED. No -bin, deliberately.

llama-swap -- SRC_URI is now solely the upstream tarball; the adopted ebuild
took even the main source from a third party's personal account. Adds
-tags embed_ui, without which USE=ui ran the whole npm build and shipped a
binary with no UI. The systemd unit could never have worked: it used %i and
User=%i but installed as llama-swap.service, and systemd only expands %i for
a name containing '@' -- now installed via systemd_newunit as
llama-swap@.service, with the EnvironmentFile it expects shipped as an
example. Keeps ~arm64, unlike the ggml family: this is pure Go with no cgo
and no arch-specific path, and upstream builds linux-arm64 itself.

Uses ego mod download under RESTRICT="network-sandbox", matching
dev-util/trivy and dev-util/act. This is a KNOWING divergence from story 003
R4.1, which asked for a sandbox-clean default: upstream ships no vendor/
directory, so the alternative commits the overlay to hosting a generated
tarball on distfiles.obentoo.org and to hold = true forever after. The
alternative implementation is preserved and documented; the choice between
them should be made once, for this package and sci-ml/localai together.

All three records download-validate against upstream and pass the bentoo
checker. KEYWORDS is ~amd64 for the two C++ packages, consistent with the
decision taken across the ggml family: an unvalidated keyword is worse than
none.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>