From 9e6789d0b075d8881c6e10f2fb56d7bc56cd0907 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 21 Mar 2020 17:19:15 +0100 Subject: [PATCH 3/3] gnu: Add parlatype. * gnu/packages/speech.scm (parlatype): New variable. --- gnu/packages/speech.scm | 62 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm index 8ee6fbfdc4..64616d1484 100644 --- a/gnu/packages/speech.scm +++ b/gnu/packages/speech.scm @@ -29,6 +29,7 @@ #: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) @@ -37,9 +38,13 @@ #: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) @@ -538,3 +543,60 @@ manipulating acoustic feature and audio files.") large vocabulary, speaker-independent continuous speech recognition engine.") (license license:bsd-2))) + +(define-public parlatype + ;; This is one commit away from 2.0, because the latter introduced + ;; a regression in ASR. + (let ((commit "7d22ead13ef7578f99d24146663cc1bdb7d8c2a9") + (revision "1")) + (package + (name "parlatype") + (version (git-version "2.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gkarsay/parlatype.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0r3k3qczbzi7bs5s1rddhpsnadyr805df40bqkx0srlxgh5mfghf")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:tests? #f ;require internet access + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-parlatype + ;; Add gstreamer plugin provided in this packages to system's + ;; plugins. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (gst-plugin-path (string-append + out "/lib/gstreamer-1.0/" + ":" + (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