aux-config/packages/vosk-bin/default.nix

41 lines
1.1 KiB
Nix
Raw Permalink Normal View History

2024-12-20 01:51:36 +01:00
{ stdenv, fetchurl, unzip, system }:
# Source https://github.com/Lykos153/numen-nix
let
getSource = system: version: let
sources = {
x86_64-linux = {
systemString = "linux-x86_64";
sha256 = "sha256-u9yO2FxDl59kQxQoiXcOqVy/vFbP+1xdzXOvqHXF+7I=";
};
aarch64-linux = {
systemString = "linux-aarch64";
sha256 = "sha256-ReldN3Vd6wdWjnlJfX/rqMA67lqeBx3ymWGqAj/ZRUE=";
};
i686-linux = {
systemString = "linux-x86";
sha256 = "sha256-tTnvwieAlIvZji7LnBuSygizxVKhh0T3ICq3hAW44fk=";
};
};
in {
url = "https://github.com/alphacep/vosk-api/releases/download/v${version}/vosk-${(builtins.getAttr system sources).systemString}-${version}.zip";
sha256 = (builtins.getAttr system sources).sha256;
};
in
stdenv.mkDerivation rec {
# todo: other arches as well.
name = "vosk-bin";
version = "0.3.45";
src = fetchurl (getSource system version);
nativeBuildInputs = [ unzip ];
unpackCmd = "unzip $curSrc";
installPhase = ''
mkdir -p $out/lib
mv libvosk.so $out/lib/
mkdir -p $out/include
mv vosk_api.h $out/include/
'';
}