From adc03577327067ebd028ce75a5826d4707c9bd9f Mon Sep 17 00:00:00 2001 From: jopejoe1 Date: Wed, 14 Aug 2024 22:11:44 +0200 Subject: [PATCH] pocketsphinx: init at 5.0.3 --- pkgs/by-name/po/pocketsphinx/package.nix | 66 +++++++++++++++++++ .../python-modules/pocketsphinx/default.nix | 57 ++++++++++++++++ pkgs/top-level/python-packages.nix | 4 ++ 3 files changed, 127 insertions(+) create mode 100644 pkgs/by-name/po/pocketsphinx/package.nix create mode 100644 pkgs/development/python-modules/pocketsphinx/default.nix diff --git a/pkgs/by-name/po/pocketsphinx/package.nix b/pkgs/by-name/po/pocketsphinx/package.nix new file mode 100644 index 000000000000..0e37da28a939 --- /dev/null +++ b/pkgs/by-name/po/pocketsphinx/package.nix @@ -0,0 +1,66 @@ +{ + lib, + stdenv, + cmake, + doxygen, + fetchFromGitHub, + gitUpdater, + graphviz, + gst_all_1, + pkg-config, + testers, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "pocketsphinx"; + version = "5.0.3"; + + src = fetchFromGitHub { + owner = "cmusphinx"; + repo = "pocketsphinx"; + rev = "refs/tags/v${finalAttrs.version}"; + hash = "sha256-aCQpRmGHX08rA8UIt6Xf37XM34HysEzvcucLhL355k8="; + }; + + nativeBuildInputs = [ + cmake + doxygen + graphviz + pkg-config + ]; + + buildInputs = [ gst_all_1.gstreamer ]; + + cmakeFlags = [ + (lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic)) + (lib.cmakeBool "BUILD_GSTREAMER" true) + (lib.cmakeFeature "CMAKE_INSTALL_DATADIR" "${placeholder "data"}/share") + ]; + + outputs = [ + "out" + "data" + "dev" + "lib" + "man" + ]; + + passthru = { + updateScript = gitUpdater { rev-prefix = "v"; }; + tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; + }; + + meta = with lib; { + description = "Small speech recognizer"; + homepage = "https://github.com/cmusphinx/pocketsphinx"; + changelog = "https://github.com/cmusphinx/pocketsphinx/blob/v${finalAttrs.version}/NEWS"; + license = with licenses; [ + bsd2 + bsd3 + mit + ]; + pkgConfigModules = [ "pocketsphinx" ]; + mainProgram = "pocketsphinx"; + maintainers = with maintainers; [ jopejoe1 ]; + }; +}) diff --git a/pkgs/development/python-modules/pocketsphinx/default.nix b/pkgs/development/python-modules/pocketsphinx/default.nix new file mode 100644 index 000000000000..16a173efc62d --- /dev/null +++ b/pkgs/development/python-modules/pocketsphinx/default.nix @@ -0,0 +1,57 @@ +{ + lib, + stdenv, + buildPythonPackage, + cmake, + cython, + fetchFromGitHub, + memory-profiler, + ninja, + pathspec, + pocketsphinx, + pytestCheckHook, + scikit-build, + scikit-build-core, + sounddevice, +}: + +buildPythonPackage rec { + inherit (pocketsphinx) version src; + pname = "pocketsphinx"; + pyproject = true; + + dontUseCmakeConfigure = true; + + env.CMAKE_ARGS = lib.cmakeBool "USE_INSTALLED_POCKETSPHINX" true; + + buildInputs = [ pocketsphinx ]; + + build-system = [ + cmake + cython + ninja + pathspec + scikit-build-core + ]; + + dependencies = [ sounddevice ]; + + nativeCheckInputs = [ + memory-profiler + pytestCheckHook + ]; + + pythonImportsCheck = [ "pocketsphinx" ]; + + meta = with lib; { + description = "Small speech recognizer"; + homepage = "https://github.com/cmusphinx/pocketsphinx"; + changelog = "https://github.com/cmusphinx/pocketsphinx/blob/v${version}/NEWS"; + license = with licenses; [ + bsd2 + bsd3 + mit + ]; + maintainers = with maintainers; [ jopejoe1 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9abd47731678..0440baf355b7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10601,6 +10601,10 @@ self: super: with self; { pocket = callPackage ../development/python-modules/pocket { }; + pocketsphinx = callPackage ../development/python-modules/pocketsphinx { + inherit (pkgs) pocketsphinx; + }; + podcastparser = callPackage ../development/python-modules/podcastparser { }; podcats = callPackage ../development/python-modules/podcats { };