* [bug#35423] [PATCH] gnu: Add julius.
2019-04-25 2:34 [bug#35423] [PATCH] gnu: Add julius nly
@ 2019-04-25 3:29 ` Tobias Geerinckx-Rice
2019-04-26 0:41 ` nly
2019-05-06 18:17 ` nly
2 siblings, 0 replies; 6+ messages in thread
From: Tobias Geerinckx-Rice @ 2019-04-25 3:29 UTC (permalink / raw)
To: 35423
[-- Attachment #1: Type: text/plain, Size: 3783 bytes --]
nly,
Thanks for the patch! Unfortunately, the indentation's buggered.
How did you create/send it?
nly@disroot.org wrote:
> Julius is a speech recognition tool. Package uses a custom
> license.
>
> From e01acf44822c57cf2af4678007ddd6a70b61ce1e Mon Sep 17
> 00:00:00 2001
> From: Amar Singh <nly@disroot.org>
> Date: Sun, 21 Apr 2019 19:37:37 +0530
> Subject: [PATCH] gnu: Add julius.
>
> * gnu/packages/speech.scm (julius): New variable.
> ---
> gnu/packages/speech.scm | 39
> +++++++++++++++++++++++++++++++++++++++
> 1 file changed, 39 insertions(+)
>
> diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
> index 2d6c63e3f9..a99be8a0aa 100644
> --- a/gnu/packages/speech.scm
> +++ b/gnu/packages/speech.scm
> @@ -33,9 +33,11 @@
> #:use-module (gnu packages gcc)
> #:use-module (gnu packages glib)
> #:use-module (gnu packages linux)
> + #: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 sdl)
> #:use-module (gnu packages textutils))
> (define-public espeak
> @@ -119,6 +121,43 @@ It is based on the eSpeak engine and
> supports spectral and Klatt formant
> synthesis, and the ability to use MBROLA voices.")
> (license license:gpl3+)))
> +(define-public julius
> + (package
> + (name "julius")
> + (version "8c60cb8c")
Package versions must be monotonically increasing over time so
Guix (and users) can determine which is newer. Git commits
aren't.
We also prefer to package upstream releases whenever possible, and
I see there's a 4.5 release on GitHub. Would that do?
If not, can you use GIT-VERSION (with "4.5" as the first argument)
instead? Examples abound in (gnu packages).
> + (source
> + (origin
> + (method git-fetch)
> + (uri
> + (git-reference
> + (url "https://github.com/julius-speech/julius")
> + (commit version)))
> + (file-name
> + (git-file-name name version))
This can remain unchanged even if you'd switch to GIT-VERSION.
> + (sha256
> + (base32
> + "11qbp9kid251lx6li4fv1r6l0pixxcs1m00sax1z057bhcv4jc7a"))))
> + (build-system gnu-build-system)
> + (arguments
> + `(#:phases
> + (modify-phases %standard-phases
> + (delete 'check))))
> + (inputs
> + `(("alsa-lib" ,alsa-lib)
> + ("zlib" ,zlib)
> + ("sdl2" ,sdl2)
> + ("perl" ,perl)))
Nitpick: might as wel sort these before they go in.
> + (home-page "https://github.com/julius-speech/")
According to the README, the ‘official’ home page is just
https://github.com/julius-speech/julius
> + (synopsis "Open-Source Large Vocabulary Continuous Speech
> +Recognition Engine")
Everything in Guix is ‘Open Source’ (not a term we should be
promoting anyway :-) so we don't mention it in synopses or
descriptions.
I don't think the capitalisation is helpful (even if ‘LVCSR’ were
a common initialism, ‘Engine’ wouldn't be capitalised).
> + (description
> + "Julius is a high-performance, small-footprint large
> vocabulary continuous
> + speech recognition (LVCSR) decoder software for speech-related
> researchers and
> +developers.")
Here you can use @acronym{LVCSR, large vocabulary continuous
speech recognition} if you like.
This description is awfully short. Since you're familiar with the
software, would you mind expanding it? You can re-use the most
relevant parts of the README or other documentation.
> + (license
> + (license:non-copyleft "http://julius.osdn.jp/LICENSE.txt"
> + "Julius-Modified-BSD-4Clause"))))
Hmm. I'm not sure if clauses 3 and 5 could be problematic. Has
this licence been previously discussed elsewhere in the FSDG
world?
Thanks!
T G-R
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#35423] [PATCH] gnu: Add julius.
2019-04-25 2:34 [bug#35423] [PATCH] gnu: Add julius nly
2019-04-25 3:29 ` Tobias Geerinckx-Rice
@ 2019-04-26 0:41 ` nly
2019-05-06 15:29 ` Ricardo Wurmus
2019-05-06 18:17 ` nly
2 siblings, 1 reply; 6+ messages in thread
From: nly @ 2019-04-26 0:41 UTC (permalink / raw)
To: 35423
[-- Attachment #1.1: Type: text/plain, Size: 4824 bytes --]
> nly,
> Thanks for the patch! Unfortunately, the indentation's buggered.
> How did you create/send it?
> nly@disroot.org (mailto:nly@disroot.org) wrote:
> > Julius is a speech recognition tool. Package uses a custom
> > license.
> >
> > From e01acf44822c57cf2af4678007ddd6a70b61ce1e Mon Sep 17
> > 00:00:00 2001
> > From: Amar Singh <nly@disroot.org (mailto:nly@disroot.org)>
> > Date: Sun, 21 Apr 2019 19:37:37 +0530
> > Subject: [PATCH] gnu: Add julius.
> >
> > * gnu/packages/speech.scm (julius): New variable.
> > ---
> > gnu/packages/speech.scm | 39
> > +++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 39 insertions(+)
> >
> > diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
> > index 2d6c63e3f9..a99be8a0aa 100644
> > --- a/gnu/packages/speech.scm
> > +++ b/gnu/packages/speech.scm
> > @@ -33,9 +33,11 @@
> > #:use-module (gnu packages gcc)
> > #:use-module (gnu packages glib)
> > #:use-module (gnu packages linux)
> > + #: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 sdl)
> > #:use-module (gnu packages textutils))
> > (define-public espeak
> > @@ -119,6 +121,43 @@ It is based on the eSpeak engine and
> > supports spectral and Klatt formant
> > synthesis, and the ability to use MBROLA voices.")
> > (license license:gpl3+)))
> > +(define-public julius
> > + (package
> > + (name "julius")
> > + (version "8c60cb8c")
Web mail must've wrapped the text.
> Package versions must be monotonically increasing over time so
> Guix (and users) can determine which is newer. Git commits
> aren't.
> We also prefer to package upstream releases whenever possible, and
> I see there's a 4.5 release on GitHub. Would that do?
> If not, can you use GIT-VERSION (with "4.5" as the first argument)
> instead? Examples abound in (gnu packages).
> > + (source
> > + (origin
> > + (method git-fetch)
> > + (uri
> > + (git-reference
> > + (url "https://github.com/julius-speech/julius (https://github.com/julius-speech/julius)")
> > + (commit version)))
> > + (file-name
> > + (git-file-name name version))
> This can remain unchanged even if you'd switch to GIT-VERSION.
Using git-version now, (git-version "4.5" "1" commit). The commit is indeed version 4.5.
> > + (sha256
> > + (base32
> > + "11qbp9kid251lx6li4fv1r6l0pixxcs1m00sax1z057bhcv4jc7a"))))
> > + (build-system gnu-build-system)
> > + (arguments
> > + `(#:phases
> > + (modify-phases %standard-phases
> > + (delete 'check))))
> > + (inputs
> > + `(("alsa-lib" ,alsa-lib)
> > + ("zlib" ,zlib)
> > + ("sdl2" ,sdl2)
> > + ("perl" ,perl)))
> Nitpick: might as wel sort these before they go in.
> > + (home-page "https://github.com/julius-speech (https://github.com/julius-speech/)")
> According to the README, the ‘official’ home page is just
> https://github.com/julius-speech/julius (https://github.com/julius-speech/julius)
> > + (synopsis "Open-Source Large Vocabulary Continuous Speech
> > +Recognition Engine")
> Everything in Guix is ‘Open Source’ (not a term we should be
> promoting anyway :-) so we don't mention it in synopses or
> descriptions.
> I don't think the capitalisation is helpful (even if ‘LVCSR’ were
> a common initialism, ‘Engine’ wouldn't be capitalised).
> > + (description
> > + "Julius is a high-performance, small-footprint large
> > vocabulary continuous
> > + speech recognition (LVCSR) decoder software for speech-related
> > researchers and
> > +developers.")
> Here you can use @acronym{LVCSR, large vocabulary continuous
> speech recognition} if you like.
> This description is awfully short. Since you're familiar with the
> software, would you mind expanding it? You can re-use the most
> relevant parts of the README or other documentation.
Synopsis is lowercase now, Added one more sentence to description. Use
@(acronym ..) in description.
> > + (license
> > + (license:non-copyleft "http://julius.osdn.jp/LICENSE.txt (http://julius.osdn.jp/LICENSE.txt)"
> > + "Julius-Modified-BSD-4Clause"))))
> Hmm. I'm not sure if clauses 3 and 5 could be problematic. Has
> this licence been previously discussed elsewhere in the FSDG
> world?
>
> Thanks!
> T G-R
Yes, Julius is free software as of Version 4.2.2. It's been discussed at
Fedora project: https://fedoraproject.org/wiki/Licensing/Julius (https://fedoraproject.org/wiki/Licensing/Julius)
See attachment for patch. Alternatively: http://nly.info.tm:9001/guix/gnu-add-julius.patch (http://nly.info.tm:9001/guix/gnu-add-julius.patch)
Cheers,
Amar Singh<nly@disroot.org (mailto:nly@disroot.org)>
[-- Attachment #1.2: Type: text/html, Size: 6499 bytes --]
[-- Attachment #2: 0001-gnu-Add-julius.patch --]
[-- Type: application/octet-stream, Size: 2629 bytes --]
From 0076d84979bed3666f68ad883ee358b18519411e Mon Sep 17 00:00:00 2001
From: Amar Singh <nly@disroot.org>
Date: Sun, 21 Apr 2019 19:37:37 +0530
Subject: [PATCH] gnu: Add julius.
* gnu/packages/speech.scm (julius): New variable.
---
gnu/packages/speech.scm | 43 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
index 2d6c63e3f9..319713e29a 100644
--- a/gnu/packages/speech.scm
+++ b/gnu/packages/speech.scm
@@ -33,9 +33,11 @@
#:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages linux)
+ #: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 sdl)
#:use-module (gnu packages textutils))
(define-public espeak
@@ -119,6 +121,47 @@ It is based on the eSpeak engine and supports spectral and Klatt formant
synthesis, and the ability to use MBROLA voices.")
(license license:gpl3+)))
+(define-public julius
+ (let ((commit "8c60cb8c99998bad8c04e6e50810596b80309eea"))
+ (package
+ (name "julius")
+ (version (git-version "4.5" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/julius-speech/julius")
+ (commit commit)))
+ (file-name
+ (git-file-name name version))
+ (sha256
+ (base32
+ "11qbp9kid251lx6li4fv1r6l0pixxcs1m00sax1z057bhcv4jc7a"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'check))))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("zlib" ,zlib)
+ ("sdl2" ,sdl2)
+ ("perl" ,perl)))
+ (home-page "https://github.com/julius-speech/julius")
+ (synopsis "Large vocabulary continuous speech recognition
+engine")
+ (description
+ "Julius is a high-performance, small-footprint large vocabulary
+continuous speech recognition @acronym(LVCSR, large vocabulary
+continous speech recognition) decoder software for speech-related
+researchers and developers. Based on word N-gram and context-dependent
+HMM, it can perform real-time decoding on various computers and
+devices from micro-computer to cloud server.")
+ (license
+ (license:non-copyleft "http://julius.osdn.jp/LICENSE.txt"
+ "Julius-Modified-BSD-4Clause")))))
+
(define-public mitlm
(package
(name "mitlm")
--
2.21.0
^ permalink raw reply related [flat|nested] 6+ messages in thread