From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:59276) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jFEPk-0002xq-1g for guix-patches@gnu.org; Fri, 20 Mar 2020 05:58:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jFEPi-0004f9-Ah for guix-patches@gnu.org; Fri, 20 Mar 2020 05:58:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:38016) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jFEPi-0004dx-50 for guix-patches@gnu.org; Fri, 20 Mar 2020 05:58:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jFEPi-0006kX-41 for guix-patches@gnu.org; Fri, 20 Mar 2020 05:58:02 -0400 Subject: [bug#39721] [WIP PATCH] Parlatype (v2) Resent-Message-ID: From: Nicolas Goaziou References: <87o8treqe3.fsf@nicolasgoaziou.fr> Date: Fri, 20 Mar 2020 10:56:51 +0100 In-Reply-To: <87o8treqe3.fsf@nicolasgoaziou.fr> (Nicolas Goaziou's message of "Fri, 21 Feb 2020 19:44:55 +0100") Message-ID: <87lfnvbb8c.fsf@nicolasgoaziou.fr> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 39721@debbugs.gnu.org --=-=-= Content-Type: text/plain Nicolas Goaziou writes: > I've been sitting on this patch for a few months now, but I'm stuck at > this point. > > So, this package is about Parlatype. It compiles fine, but doesn't > start, complaining about a missing Gstreamer dependency. As one can tell > from the FIXME, I attempted to fix it without much success. I think > fresh eyes are required. Gentle bump. I'm sending a rebased version of the patch. The executable complains that "parlasphinx" plugin is missing from the good gstreamer plugins. Yet, "libgstparlasphinx.so" is correctly installed in "$out/lib/gstreamer-1.0/". Any clue ? Thanks! --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-gnu-Add-parlatype.patch Content-Description: WIP Parlatype (v2) >From f9bb2ed8fa47fae8d5b154fdd8cdf6d9176a26f0 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 21 Feb 2020 09:40:03 +0100 Subject: [PATCH] gnu: Add parlatype. * gnu/packages/speech.scm (sphinxbase, pocketsphinx, parlatype): New variables. --- gnu/packages/speech.scm | 121 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm index 5fdf2cdbd8..1fbdd5d501 100644 --- a/gnu/packages/speech.scm +++ b/gnu/packages/speech.scm @@ -28,19 +28,29 @@ #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system meson) #:use-module (gnu packages) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages base) ;for 'which' + #:use-module (gnu packages bison) #:use-module (gnu packages compression) + #:use-module (gnu packages documentation) #:use-module (gnu packages emacs) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gcc) + #:use-module (gnu packages gettext) #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gstreamer) + #:use-module (gnu packages gtk) #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) + #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) + #:use-module (gnu packages swig) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils)) @@ -471,3 +481,114 @@ The system is written in C++ and uses the Edinburgh Speech Tools Library for low level architecture and has a Scheme (SIOD) based command interpreter for control.") (license (license:non-copyleft "file://COPYING")))) + +(define-public sphinxbase + (package + (name "sphinxbase") + (version "5prealpha") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/cmusphinx/" + "sphinxbase/" version "/" + "sphinxbase-" version ".tar.gz")) + (sha256 + (base32 "0vr4k8pv5a8nvq9yja7kl13b5lh0f9vha8fc8znqnm8bwmcxnazp")))) + (build-system gnu-build-system) + (arguments + `(#:parallel-tests? #f)) ;tests fail otherwise + (native-inputs + `(("bison" ,bison) + ("doxygen" ,doxygen) + ("perl" ,perl) ;for tests + ("python" ,python))) + (inputs + `(("pulseaudio" ,pulseaudio) + ("swig" ,swig))) + (home-page "https://cmusphinx.github.io/") + (synopsis "Support library required by Pocketsphinx and Sphinxtrain") + (description "This package contains the basic libraries shared by +the CMU Sphinx trainer and all the Sphinx decoders (Sphinx-II, +Sphinx-III, and PocketSphinx), as well as some common utilities for +manipulating acoustic feature and audio files.") + (license license:bsd-4))) + +(define-public pocketsphinx + (package + (name "pocketsphinx") + (version "5prealpha") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/cmusphinx/" + "pocketsphinx/" version "/" + "pocketsphinx-" version ".tar.gz")) + (sha256 + (base32 "1n9yazzdgvpqgnfzsbl96ch9cirayh74jmpjf7svs4i7grabanzg")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("perl" ,perl) ;for tests + ("python" ,python))) + (inputs + `(("gstreamer" ,gstreamer) + ("libcap" ,libcap) + ("pulseaudio" ,pulseaudio) + ("sphinxbase" ,sphinxbase) + ("swig" ,swig))) + (home-page "https://cmusphinx.github.io/") + (synopsis "Recognizer library written in C") + (description "PocketSphinx is one of Carnegie Mellon University's +large vocabulary, speaker-independent continuous speech recognition +engine.") + (license license:bsd-2))) + +(define-public parlatype + (package + (name "parlatype") + (version "1.6.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gkarsay/parlatype.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1nbn939cramizbyp2s57hmlb3hpr02i0az2f1z570mjc7jqgd8g8")))) + (build-system meson-build-system) + (arguments + `(#:tests? #f ;require internet access + #:configure-flags (list "-Dlibreoffice=false") + #:phases + (modify-phases %standard-phases + ;; FIXME: The following doesn't work; at runtime, parlatype cannot + ;; find gstreamer good plugin (parlasphinx). + (add-after 'install 'wrap-parlatype + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))) + (wrap-program (string-append out "/bin/parlatype") + `("GST_PLUGIN_SYSTEM_PATH" ":" = (,gst-plugin-path)))) + #t))))) + (native-inputs + `(("appstream-glib" ,appstream-glib) + ("desktop-file-utils" ,desktop-file-utils) ;for desktop-file-validate + ("gettext" ,gettext-minimal) + ("glib" ,glib "bin") ;for glib-compile-resources + ("pkg-config" ,pkg-config) + ("yelp-tools" ,yelp-tools))) + (inputs + `(("gst-plugins-base" ,gst-plugins-base) + ("gst-plugins-good" ,gst-plugins-good) + ("gstreamer" ,gstreamer) + ("gtk+" ,gtk+) + ("pocketsphinx" ,pocketsphinx) + ("pulseaudio" ,pulseaudio) + ("sphinxbase" ,sphinxbase))) + (home-page "http://gkarsay.github.io/parlatype/") + (synopsis "GNOME audio player for transcription") + (description "Parlatype is an audio player for the GNOME desktop +environment. Its main purpose is the manual transcription of spoken +audio files.") + (license license:gpl3+))) -- 2.25.1 --=-=-=--