[PATCH] gnu: Add Mycroft Voice Assistant

  • Open
  • quality assurance status badge
Details
4 participants
  • Morgan Smith
  • Efraim Flashner
  • Nicolas Goaziou
  • phodina
Owner
unassigned
Submitted by
phodina
Severity
normal
P
P
phodina wrote on 18 Sep 2021 19:01
[PATCH 01/18] gnu: Add python-pyee.
(name . guix-patches@gnu.org)(address . guix-patches@gnu.org)
qQ-NMjrokukHQud2psYiSbCZ9IpYwa0oatHWsznaPmngNBwHWaDqjE-NIb4plR7BF0snEHpfSGWL_RFYn5_fJ7kdg8lhZNDcW4O5YTfwwOE=@protonmail.com
* gnu/packages/python-xyz.scm (python-pyee): New variable.

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 758c20868e..7add339e90 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16446,6 +16446,35 @@ Record Format (DWARF).")
(define-public python2-pyev
(package-with-python2 python-pyev))

+(define-public python-pyee
+ (package
+ (name "python-pyee")
+ (version "8.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyee" version))
+ (sha256
+ (base32
+ "0cgxbdr4zmil03wwr5fv58789i51gka8a9fxm1dgkf5xs9dwrnlj"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest-trio" ,python-pytest-trio)
+ ("python-pytest-asyncio" ,python-pytest-asyncio)
+ ("python-pytest-runner" ,python-pytest-runner)
+ ("python-pytest" ,python-pytest)
+ ("python-mock" ,python-mock)))
+ (propagated-inputs
+ `(("python-vcversioner" ,python-vcversioner)
+ ("python-twisted" ,python-twisted)
+ ("python-trio" ,python-trio)))
+ (home-page "https://github.com/jfhbrook/pyee")
+ (synopsis
+ "Port of node.js's EventEmitter to python")
+ (description
+ "Port of node.js's EventEmitter to python.")
+ (license license:expat)))
+
(define-public python-imagesize
(package
(name "python-imagesize")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 19:04
[PATCH 02/18] gnu: Add python-fann2.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
dNEaftdaAUsa5CyCkZI_eYHKdef15ifNQsyNpEb3LChpW_qH1uq2-uCyD9E2RYXSiu0l_SjRa-bgQALP3Zu-J4xBGN637SCeUzIJdcy4x-U=@protonmail.com
* gnu/packages/python-xyz.scm (python-fann2): New variable.

Toggle diff (41 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7add339e90..6aa0f3236a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -174,6 +174,7 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages monitoring)
#:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages machine-learning)
#:use-module (gnu packages networking)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages openstack)
@@ -17885,6 +17886,28 @@ current test, while only declaring the test-specific fields")
(define-public python2-factory-boy
(package-with-python2 python-factory-boy))

+(define-public python-fann2
+ (package
+ (name "python-fann2")
+ (version "1.0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fann2" version))
+ (sha256
+ (base32
+ "17zv6hbq26qg9jmsshx3xnnnv203fr4cyjg4v3rgq38a5i5agv2k"))))
+ (build-system python-build-system)
+ (native-inputs `(("swig" ,swig)))
+ (propagated-inputs `(("fann" ,fann)))
+ (home-page
+ "https://github.com/FutureLinkCorporation/fann2")
+ (synopsis
+ "Fast Artificial Neural Network Library (FANN) Python bindings")
+ (description
+ "Fast Artificial Neural Network Library (FANN) Python bindings.")
+ (license license:lgpl2.1)))
+
(define-public python-translate-toolkit
(package
(name "python-translate-toolkit")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 20:58
[PATCH 03/19] gnu: Add python-padaos.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
1Y1jXI0j316yGOUUVTgI8YYNWbjfYVVwrY1ye6FCjH1zvsK9fNlvdOG30SPHHLaR2kEoTG8R9FA32XUcABfdT4wQnevjJR7662pswAtaLyI=@protonmail.com
* gnu/packages/python-xyz.scm (python-padaos): New variable.

Toggle diff (28 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 074f799130..b2d7a290e6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -13759,6 +13759,23 @@ anymore.")
(define-public python2-pathlib
(package-with-python2 python-pathlib))

+(define-public python-padaos
+ (package
+ (name "python-padaos")
+ (version "0.1.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "padaos" version))
+ (sha256
+ (base32
+ "10zfk0nfv0fsy6r0by4cf6hlxxid7kp4bai2fwsbad9zskz6dgj7"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/MycroftAI/padaos")
+ (synopsis "Rigid, lightweight, dead-simple intent parser")
+ (description "Converts sentences into one big chunk of regex. Each intent is a single compiled regex matcher.")
+ (license license:expat)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 20:59
[PATCH 04/19] gnu: Add python-precise-runner.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
z1bwHDOp7KCYOmqr5TcTxAwNmCGN6H3rwf5tvu5Y2hw58tDleDtjzWps4QoeVr3PM6V6m6nNbfojDF35v4OVaHwQYmJEYmkZqe0EooX5bPg=@protonmail.com
* gnu/packages/python-xyz.scm (python-precise-runner): New variable.

Toggle diff (39 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b2d7a290e6..4fe8748931 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -133,6 +133,7 @@
#:use-module (gnu packages adns)
#:use-module (gnu packages aidc)
#:use-module (gnu packages attr)
+ #:use-module (gnu packages audio)
#:use-module (gnu packages backup)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
@@ -22094,6 +22095,26 @@ multi-language pre-commit hooks.")
RFC 8265 and RFC 8266.")
(license license:expat)))

+(define-public python-precise-runner
+ (package
+ (name "python-precise-runner")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "precise-runner" version))
+ (sha256
+ (base32
+ "13zbxd8yccsk67b5ksrjf7206krwxj2s3q07x9pnhrrn8k6hkn45"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-pyaudio" ,python-pyaudio)))
+ (home-page "https://github.com/MycroftAI/mycroft-precise")
+ (synopsis "Wrapper to use Mycroft Precise Wake Word Listener")
+ (description "Audio stream monitoring wrapper which triggers an event when
+it recognizes a specific phrase.")
+ (license license:asl2.0)))
+
(define-public python-absl-py
(package
(name "python-absl-py")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 20:59
[PATCH 05/19] gnu: Add python-petact.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
rwCwfG_sDBgYk-li7wEqFozsxp0tNmqJPSOlDqjGKp_lbr7gUStQyW2t8ueY4UdzgkqMZggGnRqWMXOo_Qd_ZAPXPy5X-YRNfrcf4O93NZM=@protonmail.com
* gnu/packages/python-xyz.scm (python-petact): New variable.

Toggle diff (29 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4fe8748931..072bd121d5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9349,6 +9349,24 @@ PEP 8.")
,@(package-arguments base)))
(native-inputs `()))))

+(define-public python-petact
+ (package
+ (name "python-petact")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "petact" version))
+ (sha256
+ (base32
+ "1rjh0fjimmixbvrv6znkfrfa83ndjc4pgyfyl90iwq3az120vjsx"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/matthewscholefield/petact")
+ (synopsis "Package extraction tool")
+ (description "Library used for installing and updating compressed tar
+files.")
+ (license license:expat))) ; MIT
+
(define-public python-pyflakes
(package
(name "python-pyflakes")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:00
[PATCH 06/19] gnu: Add python-padatious.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
jqH83qVESAC1MpmcHRP_9DqOQ_MRWGBhwfCZ0uKqcBZ5Egvv5LjMk_l8uKFYA6b1MkCuEvtFzMTQ0OCH5b2JlzWs7cFDRKdOEDTWt8jOyig=@protonmail.com
* gnu/packages/python-xyz.scm (python-padatious): New variable.

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 072bd121d5..1b1a26f603 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -142,6 +142,7 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
+ #:use-module (gnu packages digest)
#:use-module (gnu packages djvu)
#:use-module (gnu packages docker)
#:use-module (gnu packages enchant)
@@ -13795,6 +13796,27 @@ anymore.")
(description "Converts sentences into one big chunk of regex. Each intent is a single compiled regex matcher.")
(license license:expat)))

+(define-public python-padatious
+ (package
+ (name "python-padatious")
+ (version "0.4.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "padatious" version))
+ (sha256
+ (base32
+ "0xbgf75kxclacgairid8m948hrrngcxhykr1wkvav32fp58z4wg4"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-fann2" ,python-fann2)
+ ("python-padaos" ,python-padaos)
+ ("python-xxhash" ,python-xxhash)))
+ (home-page "https://github.com/MycroftAI/padatious")
+ (synopsis "Neural network intent parser")
+ (description "A neural network intent parser")
+ (license license:asl2.0)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:01
[PATCH 07/19] gnu: Add python-lazy.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
OLY7gCvWS6mxjo6zqJ-e0uHKyDZhiFuHUMI5LdoUt-PEbnNGunQRCV26x3w9mtl8bhb1IdZAngtcJ7JELOvEC_RdvzP2f-JxK3M-9g7sitU=@protonmail.com
* gnu/packages/python-xyz.scm (python-lazy): New variable.

Toggle diff (33 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1b1a26f603..8f92800112 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15254,6 +15254,28 @@ feels like an AST.")
inspection of types defined in the Python standard typing module.")
(license license:expat)))

+(define-public python-lazy
+ (package
+ (name "python-lazy")
+ (version "1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference ; pypi release link leads to project page
+ (url "https://github.com/stefanholek/lazy")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1y3y35jr0nnfh32zgdrb4r4sf9v8k36j07z2m0g6kz7bf3azsgc5"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/stefanholek/lazy")
+ (synopsis "Lazy attributes for Python objects")
+ (description "Provides lazy attributes that are evaluated only once,
+the first time they are used. Subsequent uses return the results of the first
+call.")
+ (license license:bsd-2)))
+
(define-public python-lazy-object-proxy
(package
(name "python-lazy-object-proxy")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:01
[PATCH 08/19] gnu: Add python-pako.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
lVQxLxLtGr99wmQx3Q-z9FRPvlE7Xxbs6i3hAHJtPEn_2h4dh7Hy_J06NXOTaZ2tVCR3hgp21wsNH57qnGQA0gSCMwwY8zGJrsOu4zCeZxU=@protonmail.com
* gnu/packages/python-xyz.scm (python-pako): New variable.

Toggle diff (31 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8f92800112..7180be87e5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -13817,6 +13817,26 @@ anymore.")
(description "A neural network intent parser")
(license license:asl2.0)))

+(define-public python-pako
+ (package
+ (name "python-pako")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pako" version))
+ (sha256
+ (base32
+ "07r3f86idlxb2x2mvy24fzkxyq5xalkbmk0zmqva7341pdrs0cy0"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-appdirs" ,python-appdirs)))
+ (home-page "https://github.com/MycroftAI/pako")
+ (synopsis "The universal package manager library")
+ (description
+ "Provides unified way to handle native universal package manager.")
+ (license license:asl2.0)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:02
[PATCH 09/19] gnu: Add python-adapt-parser.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
9CWWuF11TrnE2Cuq79S8qlkMzdkAGpVyA1yQFWfbvmJGuh_CNWPeMCQ3uh8GWNmo100ewFbAiYF93tfTRFLwK0ZMGnX-vP4t8t-6174vlN8=@protonmail.com
* gnu/packages/python-xyz.scm (python-adapt-parser): New variable.

Toggle diff (35 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7180be87e5..e3f996a2d2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -13502,6 +13502,30 @@ ISO 8859, etc.).")
(define-public python2-translitcodec
(package-with-python2 python-translitcodec))

+(define-public python-adapt-parser
+ (package
+ (name "python-adapt-parser")
+ (version "v0.3.7")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/MycroftAI/adapt")
+ (commit (string-append "release/" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1f67plj9f0314pm2vfqvmzqmngfq4vznzs3ikgkwsz798m1hzl6y"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-pyee" ,python-pyee)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/MycroftAI/adapt")
+ (synopsis "Text-to-intent parsing framework")
+ (description "Flexible and extensible way to parse natural language text
+into a structured intent.")
+ (license license:asl2.0)))
+
(define-public python-anyqt
(package
(name "python-anyqt")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:03
[PATCH 10/19] gnu: Add python-msm.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
ypDVEUQFsw3OGCSXSS-LoTIbUR3k-gCbmv6aPgfoIGw71KIYPNITO0CdKiJW78qq4N3nV9U29xjP9kUfImQyMr_TTvinPP9hw4eIOKUPwSo=@protonmail.com
* gnu/packages/python-xyz.scm (python-msm): New variable.

Toggle diff (45 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e3f996a2d2..1379302ef4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -148,6 +148,7 @@
#:use-module (gnu packages enchant)
#:use-module (gnu packages file)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages geo)
#:use-module (gnu packages ghostscript)
@@ -10143,6 +10144,32 @@ reading and writing MessagePack data.")
(define-public python2-msgpack
(package-with-python2 python-msgpack))

+(define-public python-msm
+ (package
+ (name "python-msm")
+ (version "0.8.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "msm" version))
+ (sha256
+ (base32
+ "00z588imq7q33iv3hn83mf2cyqrbs5f6zzyfa6445ainxvskkzz2"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-fasteners" ,python-fasteners)
+ ("python-gitpython" ,python-gitpython)
+ ("python-lazy" ,python-lazy)
+ ("python-pako" ,python-pako)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-requests" ,python-requests)))
+ (home-page "https://github.com/MycroftAI/mycroft-skills-manager")
+ (synopsis "Mycroft Skills Manager")
+ (description "Command line tool for interacting with the mycroft-skills
+repository.")
+ (license license:asl2.0)))
+
(define-public python-netaddr
(package
(name "python-netaddr")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:03
[PATCH 11/19] gnu: Add python-msk.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
dvK9DSO7wbK1WBU-gVXZjuyfdt2ZVUB9p5e8izYNuHSp7qL-htm35zG32xUNbaZ5AqiSJ0EPqCzvHnCOtL-enBqboFBnCofOIQExwaWwmuQ=@protonmail.com
* gnu/packages/python-xyz.scm (python-msk): New variable.

Toggle diff (35 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1379302ef4..6f03518ea8 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10144,6 +10144,30 @@ reading and writing MessagePack data.")
(define-public python2-msgpack
(package-with-python2 python-msgpack))

+(define-public python-msk
+ (package
+ (name "python-msk")
+ (version "0.3.16")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "msk" version))
+ (sha256
+ (base32
+ "11zf2s5wdglzki2r05plx6j9gykwvbpdn8fbr3fnjz4g0vy1g9y6"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-colorama" ,python-colorama)
+ ("python-gitpython" ,python-gitpython)
+ ("python-msm" ,python-msm)
+ ("python-pygithub" ,python-pygithub)
+ ("python-requests" ,python-requests)))
+ (home-page "https://github.com/MycroftAI/mycroft-skills-kit")
+ (synopsis "Mycroft Skills Kit")
+ (description "Tool to help with creating, uploading, and upgrading Mycroft
+skills.")
+ (license license:asl2.0)))
+
(define-public python-msm
(package
(name "python-msm")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:03
[PATCH 12/19] gnu: Add python-lingua-franca.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
YwWPS9kOC0lgNLJapSLqNRE7WzVL-l4-mIbvVAKarWU-HHgkWFAg4SHrgEJzND3_tm4FEFwr7hZ6GxgMoT2XleKQHEXXiMTG37h1Ee_74UQ=@protonmail.com
* gnu/packages/python-xyz.scm (python-lingua-franca): New variable.

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6f03518ea8..5c068ee17b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -19348,6 +19348,35 @@ lines are read from a single file.")
(define-public python2-linecache2
(package-with-python2 python-linecache2))

+(define-public python-lingua-franca
+ (package
+ (name "python-lingua-franca")
+ (version "v0.4.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/lingua-franca")
+ (commit (string-append "release/" version))))
+ (file-name (git-file-name name version))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; Use newer version of pkg
+ (substitute* "requirements.txt"
+ (("python-dateutil==") "python-dateutil>="))
+ #t))
+ (sha256
+ (base32
+ "1qrd1jdi57lv9q3h1g18sg1whgxsmij7x3jw6p608cnhpssf92dr"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)))
+ (home-page "https://github.com/MycroftAI/lingua-franca")
+ (synopsis "Mycroft's multilingual text parsing and formatting library")
+ (description "Converts data into spoken equivalents.")
+ (license license:asl2.0)))
+
(define-public python-traceback2
(package
(name "python-traceback2")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:04
[PATCH 13/19] gnu: Add python-pocketsphinx.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
C6e8rIo2_W7l36gAQM870V3OZ-Y9rBXO50bBab4rG4KysCdhwjTKxppQQWOagEgv3gLe6GGHyOJsWgrEZ71bqC-VSrxpfgzTEAV6dguLfaI=@protonmail.com
* gnu/packages/python-xyz.scm (python-pocketsphinx): New variable.

Toggle diff (49 lines)
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index a7a3443707..5f9967ba0e 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -45,14 +45,44 @@
#:use-module (gnu packages graphviz)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages time)
#:use-module (gnu packages python-science)
#:use-module (gnu packages graph))

+(define-public python-pocketsphinx
+ (package
+ (name "python-pocketsphinx")
+ (version "0.1.15")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bambocher/pocketsphinx-python")
+ (recursive? #t)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "18i1jw9138ldxigfcjz6rk9z2c2wc2ng2zdnkzippv45d5izkdz8"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("swig" ,swig)))
+ (propagated-inputs
+ `(("pulseaudio" ,pulseaudio)
+ ("alsa-lib" ,alsa-lib)))
+ (home-page "https://github.com/bambocher/pocketsphinx-python")
+ (synopsis "Python interface to CMU Sphinxbase and Pocketsphinx libraries")
+ (description "Python interface to CMU Sphinxbase and Pocketsphinx libraries")
+ (license license:bsd-3)))
+
(define-public python-sphinx
(package
(name "python-sphinx")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:04
[PATCH 14/19] gnu: Add python-gtts.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
k2qw9zW5ZxTsP9Fcdc5GZTAB8vMzZpVmmqW5PvwDbfZD8O7x6ZxDnuFAAAisjEXEIjOkHN-eA6C6royUJqZW71--_hI-CoOhHa7j4QnG9p0=@protonmail.com
* gnu/packages/python-xyz.scm (python-gtts): New variable.

Toggle diff (42 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5c068ee17b..46e5c2522d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16371,6 +16371,37 @@ A GraphQL schema describes your data model, and provides a GraphQL server
with an associated set of resolve methods that know how to fetch data.")
(license license:expat)))

+(define-public python-gtts
+ (package
+ (name "python-gtts")
+ (version "2.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "gTTS" version))
+ (sha256
+ (base32
+ "03qah9gxhx8m6apviqyffay2dpijm2k5h88ikzgndyvs6zc18dxm"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-flake8" ,python-flake8)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-six" ,python-six)
+ ("python-testfixtures" ,python-testfixtures)))
+ (propagated-inputs
+ `(("python-click" ,python-click)
+ ("python-requests" ,python-requests)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/pndurette/gTTS")
+ (synopsis
+ "Python interface to Google Translate text-to-speech API")
+ (description
+ "Python library and CLI tool to interface with Google Translate
+text-to-speech API")
+ (license license:expat)))
+
(define-public python-nautilus
(package
(name "python-nautilus")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:11
[PATCH 16/19] gnu: Add python-mycroft-messagebus-client.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
ObdpmSNIqwUcT3brbgrBtykw20eitqv1O1SMdLtFij2H3TWt4hhxY18zpehFflUz8DQn_xh8BsRde0GAsxmkN31j2eOfDJw0H9xb5V5j7Hk=@protonmail.com
* gnu/packages/python-xyz.scm (python-mycroft-messagebus-client): New variable.

Toggle diff (34 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 60d597677a..84ad0ae37a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -20700,6 +20700,29 @@ working with iterables.")
(propagated-inputs
`(("python2-six" ,python2-six-bootstrap)))))

+(define-public python-mycroft-messagebus-client
+ (package
+ (name "python-mycroft-messagebus-client")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "mycroft-messagebus-client" version))
+ (sha256
+ (base32
+ "0dvzq1rnpg88bzz9dp5275fvw4jrr8wdfgdl3bbz81zhxnp151ih"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-pyee" ,python-pyee)
+ ("python-websocket-client"
+ ,python-websocket-client)))
+ (home-page "https://github.com/MycroftAI/mycroft-messagebus-client")
+ (synopsis "Mycroft Messagebus Client")
+ (description "This module provides simple interface for the mycroft
+messagebus and can be used to connect to mycroft, send messages and react
+to messages sent by the Mycroft system.")
+ (license license:asl2.0)))
+
(define-public python-latexcodec
(package
(name "python-latexcodec")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:11
[PATCH 17/19] gnu: Add mycroft-mimic.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
WLX8HQlBfclOByucU1qDOH9aaRjeGCOqxwYhzLPulq9Fa533g37M_T6VZOtCoiNFlMoQ3G242cgcxeadZuWEl4g-biU1yxCCjyQfm_tTVUo=@protonmail.com
* gnu/packages/speech.scm (mycroft-mimic): New variable.

Toggle diff (57 lines)
diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
index cbc46b32b4..78694362e8 100644
--- a/gnu/packages/speech.scm
+++ b/gnu/packages/speech.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
+;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,6 +46,7 @@
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
@@ -237,6 +239,36 @@ efficiency through the use of a compact vector representation of n-grams.")
(home-page "https://github.com/mitlm/mitlm")
(license license:expat)))

+(define-public mycroft-mimic
+ (package
+ (name "mycroft-mimic")
+ (version "1.3.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/mimic1")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1agwgby9ql8r3x5rd1rgx3xp9y4cdg4pi3kqlz3vanv9na8nf3id"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("libtool" ,libtool)
+ ("automake" ,automake)
+ ("autoconf" ,autoconf)))
+ (inputs `(("alsa-lib" ,alsa-lib)
+ ("pcre2" ,pcre2)))
+ (synopsis "Mycroft's TTS engine, based on CMU's Flite (Festival Lite)")
+ (description "Mimic is a fast, lightweight Text-to-speech engine developed
+by Mycroft A.I. and VocaliD, based on Carnegie Mellon University’s Flite
+(Festival-Lite) software. Mimic takes in text and reads it out loud to create
+a high quality voice.")
+ (home-page "https://github.com/MycroftAI/mimic1")
+ (license #f)))
+
(define-public speech-dispatcher
(package
(name "speech-dispatcher")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:12
[PATCH 18/19] gnu: Add python-speech-recognition.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
OLTAlbo157362lWZtknIgkP9--YAJrA2beRYmTUcnnuWO_qYgsOXg3-L21FWY-vweCwkmymYbCk2kc20eUgrcyYR464JaV-W62anREDd73Y=@protonmail.com
* gnu/packages/python-xyz.scm (python-speech-recognition): New variable.

Toggle diff (36 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 84ad0ae37a..0af13a0423 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -5340,6 +5340,31 @@ color scales, and color space conversion easy. It has support for:
(define-public python2-spectra
(package-with-python2 python-spectra))

+(define-public python-speech-recognition
+ (package
+ (name "python-speech-recognition")
+ (version "3.8.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Uberi/speech_recognition")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1lq6g4kl3y1b4ch3b6wik7xy743x6pp5iald0jb9zxqgyxy1zsz4"))))
+ (build-system python-build-system)
+ (arguments
+ ;; Attempts to aquire sound card
+ '(#:tests? #f))
+ (inputs `(("python-pyaudio" ,python-pyaudio)))
+ (home-page "https://github.com/Uberi/speech_recognition")
+ (synopsis "Speech recognition module for Python")
+ (description "Library for performing speech recognition, with support for
+several engines and APIs, online and offline.")
+ (license license:bsd-2)))
+
(define-public python-pyspnego
(package
(name "python-pyspnego")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:12
[PATCH 19/19] gnu: Add python-mycroft-core.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
A7GxbtyWR9aUbxxsQL7CIU5ur19weZRZS6ciUPXLtRMOsXEmeGBRqQEbXHMTUxk8IGTeXt-fVsmIQyQ1am_yTmnJPpfmALNpNKzIjxRt4Co=@protonmail.com
* gnu/packages/python-xyz.scm (python-mycroft-core): New variable.

Toggle diff (100 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 0af13a0423..fcb936e31e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -202,6 +202,7 @@
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
+ #:use-module (gnu packages speech)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages swig)
@@ -20725,6 +20726,87 @@ working with iterables.")
(propagated-inputs
`(("python2-six" ,python2-six-bootstrap)))))

+(define-public python-mycroft-core
+ (package
+ (name "python-mycroft-core")
+ (version "21.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/mycroft-core")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; Use newer version of pkg
+ (substitute* "requirements/requirements.txt"
+ (("tornado==") "tornado>="))
+ (substitute* "requirements/requirements.txt"
+ (("pyserial==") "pyserial>="))
+ (substitute* "requirements/requirements.txt"
+ (("psutil==") "psutil>="))
+ (substitute* "requirements/requirements.txt"
+ (("pocketsphinx==") "pocketsphinx>="))
+ (substitute* "requirements/requirements.txt"
+ (("python-dateutil==") "python-dateutil>="))
+ (substitute* "requirements/requirements.txt"
+ (("fasteners==") "fasteners>="))
+ (substitute* "requirements/requirements.txt"
+ (("PyYAML==5.4") "PyYAML>=5.3.1"))
+ (substitute* "requirements/requirements.txt"
+ (("pyxdg==") "pyxdg>="))
+ #t))
+ (sha256
+ (base32
+ "1v5yb48y3zr4s0cgkid8y1zsi6x1wrhy1jfb9axzi090ammgy700"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:" (getenv "PYTHONPATH"))))))))
+ (inputs `(("mycroft-mimic" ,mycroft-mimic)
+ ("pocketsphinx" ,pocketsphinx)))
+ (propagated-inputs
+ `(("python-fasteners" ,python-fasteners)
+ ("python-inflection" ,python-inflection)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-mycroft-messagebus-client"
+ ,python-mycroft-messagebus-client)
+ ("python-psutil" ,python-psutil)
+ ("python-tornado" ,python-tornado-6)
+ ("python-petact" ,python-petact)
+ ("python-precise-runner" ,python-precise-runner)
+ ("python-padaos" ,python-padaos)
+ ("python-speech-recoginition" ,python-speech-recognition)
+ ("python-padatious" ,python-padatious)
+ ("python-msk" ,python-msk)
+ ("python-pillow" ,python-pillow)
+ ("python-gtts" ,python-gtts)
+ ("python-requests-futures" ,python-requests-futures)
+ ("python-pyserial" ,python-pyserial)
+ ("python-pocketsphinx" ,python-pocketsphinx)
+ ("python-adapt-parser" ,python-adapt-parser)
+ ("python-lingua-franca" ,python-lingua-franca)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-fasteners" ,python-fasteners)
+ ("python-pyee" ,python-pyee)
+ ("python-psutil" ,python-psutil)
+ ("python-fann2" ,python-fann2)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-websocket-client" ,python-websocket-client)
+ ("python-requests" ,python-requests)
+ ("python-requests-futures"
+ ,python-requests-futures)))
+ (home-page "https://github.com/HelloChatterbox/HolmesIV")
+ (synopsis "Mycroft Core, the Mycroft Artificial Intelligence platform")
+ (description "This module provides a hackable open source voice assistant - Mycroft")
+ (license license:asl2.0)))
+
(define-public python-mycroft-messagebus-client
(package
(name "python-mycroft-messagebus-client")
--
2.32.0
P
P
phodina wrote on 18 Sep 2021 21:16
[PATCH 02/19] gnu: Add python-pyee.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
F908h1zgGnHxigNPvfWOgc8OgVgxG_4Ezz_ikPC5S1crMSPh9KH09zxDaAEPfqkvVC82JkV1vwnjgQR1bHb_mNJIiQA7PYrDe-hOhq3jxQ0=@protonmail.com
This is the second patch. I unfortunately mismanaged the numbering during rebase operation. If necessary I can send the patches again or if you wrap your head around that here's the order:

0001-gnu-Add-python-requests-futures.patch
0002-gnu-Add-python-pyee.patch
0003-gnu-Add-python-fann2.patch
0004-gnu-Add-python-padaos.patch
0005-gnu-Add-python-precise-runner.patch
0006-gnu-Add-python-petact.patch
0007-gnu-Add-python-padatious.patch
0008-gnu-Add-python-lazy.patch
0009-gnu-Add-python-pako.patch
0010-gnu-Add-python-adapt-parser.patch
0011-gnu-Add-python-msm.patch
0012-gnu-Add-python-msk.patch
0013-gnu-Add-python-lingua-franca.patch
0014-gnu-Add-python-pocketsphinx.patch
0015-gnu-Add-python-gtts.patch
0016-gnu-Add-python-mycroft-messagebus-client.patch
0017-gnu-Add-mycroft-mimic.patch
0018-gnu-Add-python-speech-recognition.patch
0019-gnu-Add-python-mycroft-core.patch

Sorry for that :-)

Toggle snippet (44 lines)
* gnu/packages/python-xyz.scm (python-pyee): New variable.

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d108389aef..c2527e915f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16446,6 +16446,33 @@ Record Format (DWARF).")
(define-public python2-pyev
(package-with-python2 python-pyev))

+(define-public python-pyee
+ (package
+ (name "python-pyee")
+ (version "8.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyee" version))
+ (sha256
+ (base32
+ "0cgxbdr4zmil03wwr5fv58789i51gka8a9fxm1dgkf5xs9dwrnlj"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest-trio" ,python-pytest-trio)
+ ("python-pytest-asyncio" ,python-pytest-asyncio)
+ ("python-pytest-runner" ,python-pytest-runner)
+ ("python-pytest" ,python-pytest)
+ ("python-mock" ,python-mock)))
+ (propagated-inputs
+ `(("python-vcversioner" ,python-vcversioner)
+ ("python-twisted" ,python-twisted)
+ ("python-trio" ,python-trio)))
+ (home-page "https://github.com/jfhbrook/pyee")
+ (synopsis "Port of node.js's EventEmitter to python")
+ (description "Provides a port of node.js's EventEmitter to python.")
+ (license license:expat)))
+
(define-public python-imagesize
(package
(name "python-imagesize")
--
2.32.0
P
P
phodina wrote on 8 Dec 2021 12:48
Add Mycroft - Voice Assistant
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
NCAS0Ded6IK9Wh8T21xbxm7w9sEFdV6MSO5JfW39o1jYoIyzKlOAJwg56n_8vOUuL4hhkKmwPPB8RlH-XNEXRBsnYQWiRWXFaoLtnx8b8YY=@protonmail.com
Hi,

I've rebased the patch set and updated the package definitions.

The aim of this patch set is to bring in the MyCroft - private and open Voice Assistant.

----
Petr
From 247ec26f040f9d6237b9ab28bd7a4acf6da8c8a7 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:15:41 +0200
Subject: [PATCH 01/20] gnu: Add python-requests-futures.

* gnu/packages/python-xyz.scm (python-requests-futures): New variable.

Toggle diff (35 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 81b99e1d2e..23fa409e1a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21936,6 +21936,28 @@ (define-public python-requests-file
(define-public python2-requests-file
(package-with-python2 python-requests-file))
+(define-public python-requests-futures
+ (package
+ (name "python-requests-futures")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "requests-futures" version))
+ (sha256
+ (base32
+ "0j611g1wkn98qp2b16kqz7lfz29a153jyfm02r3h8n0rpw17am1m"))))
+ (build-system python-build-system)
+ (arguments
+ ;; The test tries to open a connection to a remote server.
+ `(#:tests? #f))
+ (propagated-inputs
+ `(("python-requests" ,python-requests)))
+ (home-page "https://github.com/ross/requests-futures")
+ (synopsis "Asynchronous Python HTTP for Humans")
+ (description "Asynchronous Python HTTP for Humans.")
+ (license license:asl2.0)))
+
(define-public python-identify
(package
(name "python-identify")
--
2.34.0
From 31f15387f18a9e50cf8df030230636bec968cbad Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:19:21 +0200
Subject: [PATCH 02/20] gnu: Add python-pyee.

* gnu/packages/python-xyz.scm (python-pyee): New variable.

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 23fa409e1a..c6775cf522 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17363,6 +17363,33 @@ (define-public python-pyev
(define-public python2-pyev
(package-with-python2 python-pyev))
+(define-public python-pyee
+ (package
+ (name "python-pyee")
+ (version "8.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyee" version))
+ (sha256
+ (base32
+ "0cgxbdr4zmil03wwr5fv58789i51gka8a9fxm1dgkf5xs9dwrnlj"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest-trio" ,python-pytest-trio)
+ ("python-pytest-asyncio" ,python-pytest-asyncio)
+ ("python-pytest-runner" ,python-pytest-runner)
+ ("python-pytest" ,python-pytest)
+ ("python-mock" ,python-mock)))
+ (propagated-inputs
+ `(("python-vcversioner" ,python-vcversioner)
+ ("python-twisted" ,python-twisted)
+ ("python-trio" ,python-trio)))
+ (home-page "https://github.com/jfhbrook/pyee")
+ (synopsis "Port of node.js's EventEmitter to python")
+ (description "Provides a port of node.js's EventEmitter to python.")
+ (license license:expat)))
+
(define-public python-imagesize
(package
(name "python-imagesize")
--
2.34.0
From 953d8b2c5d353e63c1bd7a1ebfa8be6a5a4e9aa0 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:38:01 +0200
Subject: [PATCH 11/20] gnu: Add python-msm.

* gnu/packages/python-xyz.scm (python-msm): New variable.

Toggle diff (47 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 426295844a..23f111092e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -151,6 +151,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages enchant)
#:use-module (gnu packages file)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages geo)
#:use-module (gnu packages ghostscript)
@@ -10787,6 +10788,32 @@ (define-public python-msgpack-transitional
(define-public python2-msgpack
(package-with-python2 python-msgpack))
+(define-public python-msm
+ (package
+ (name "python-msm")
+ (version "0.8.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "msm" version))
+ (sha256
+ (base32
+ "00z588imq7q33iv3hn83mf2cyqrbs5f6zzyfa6445ainxvskkzz2"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-fasteners" ,python-fasteners)
+ ("python-gitpython" ,python-gitpython)
+ ("python-lazy" ,python-lazy)
+ ("python-pako" ,python-pako)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-requests" ,python-requests)))
+ (home-page "https://github.com/MycroftAI/mycroft-skills-manager")
+ (synopsis "Mycroft Skills Manager")
+ (description "Command line tool for interacting with the mycroft-skills
+repository.")
+ (license license:asl2.0)))
+
(define-public python-netaddr
(package
(name "python-netaddr")
--
2.34.0
From 1a6a90388fa2b114ce62f7df3b04c0011679331b Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:22:48 +0200
Subject: [PATCH 03/20] gnu: Add python-fann2.

* gnu/packages/python-xyz.scm (python-fann2): New variable.

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c6775cf522..6152b82b6e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -177,6 +177,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages maths)
#:use-module (gnu packages monitoring)
#:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages machine-learning)
#:use-module (gnu packages networking)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages openstack)
@@ -18800,6 +18801,25 @@ (define-public python-factory-boy
(define-public python2-factory-boy
(package-with-python2 python-factory-boy))
+(define-public python-fann2
+ (package
+ (name "python-fann2")
+ (version "1.0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fann2" version))
+ (sha256
+ (base32
+ "17zv6hbq26qg9jmsshx3xnnnv203fr4cyjg4v3rgq38a5i5agv2k"))))
+ (build-system python-build-system)
+ (native-inputs `(("swig" ,swig)))
+ (propagated-inputs `(("fann" ,fann)))
+ (home-page "https://github.com/FutureLinkCorporation/fann2")
+ (synopsis "Fast Artificial Neural Network Library (FANN) Python bindings")
+ (description "Provides bindings for Fast Artificial Neural Networks 2.2.0.")
+ (license license:lgpl2.1)))
+
(define-public python-translate-toolkit
(package
(name "python-translate-toolkit")
--
2.34.0
From fd95175e36583558956a8b9e508e3ccd66d12df6 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:26:12 +0200
Subject: [PATCH 06/20] gnu: Add python-petact.

* gnu/packages/python-xyz.scm (python-petact): New variable.

Toggle diff (31 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 82d11f04aa..6d23941899 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9972,6 +9972,24 @@ (define-public python2-pep517
,@(package-arguments base)))
(native-inputs `()))))
+(define-public python-petact
+ (package
+ (name "python-petact")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "petact" version))
+ (sha256
+ (base32
+ "1rjh0fjimmixbvrv6znkfrfa83ndjc4pgyfyl90iwq3az120vjsx"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/matthewscholefield/petact")
+ (synopsis "Package extraction tool")
+ (description "Library used for installing and updating compressed tar
+files.")
+ (license license:expat))) ; MIT
+
(define-public python-pyflakes
(package
(name "python-pyflakes")
--
2.34.0
From b5fe6b583e1993cb4c11af033b724e39a13ca966 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:33:03 +0200
Subject: [PATCH 09/20] gnu: Add python-pako.

* gnu/packages/python-xyz.scm (python-pako): New variable.

Toggle diff (33 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2b5e2a94b2..b7a816fef8 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14630,6 +14630,26 @@ (define-public python-padatious
(description "A neural network intent parser")
(license license:asl2.0)))
+(define-public python-pako
+ (package
+ (name "python-pako")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pako" version))
+ (sha256
+ (base32
+ "07r3f86idlxb2x2mvy24fzkxyq5xalkbmk0zmqva7341pdrs0cy0"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-appdirs" ,python-appdirs)))
+ (home-page "https://github.com/MycroftAI/pako")
+ (synopsis "The universal package manager library")
+ (description
+ "Provides unified way to handle native universal package manager.")
+ (license license:asl2.0)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.34.0
From 02ce61ca029307e35509496281470eaa0a4ab14e Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:29:42 +0200
Subject: [PATCH 07/20] gnu: Add python-padatious.

* gnu/packages/python-xyz.scm (python-padatious): New variable.

Toggle diff (42 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6d23941899..d36eb615fd 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -144,6 +144,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
+ #:use-module (gnu packages digest)
#:use-module (gnu packages django)
#:use-module (gnu packages djvu)
#:use-module (gnu packages docker)
@@ -14608,6 +14609,27 @@ (define-public python-padaos
is a single compiled regex matcher.")
(license license:expat)))
+(define-public python-padatious
+ (package
+ (name "python-padatious")
+ (version "0.4.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "padatious" version))
+ (sha256
+ (base32
+ "0xbgf75kxclacgairid8m948hrrngcxhykr1wkvav32fp58z4wg4"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-fann2" ,python-fann2)
+ ("python-padaos" ,python-padaos)
+ ("python-xxhash" ,python-xxhash)))
+ (home-page "https://github.com/MycroftAI/padatious")
+ (synopsis "Neural network intent parser")
+ (description "A neural network intent parser")
+ (license license:asl2.0)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.34.0
From 8ce1a3a51e000672e9aa45e52d934e02a0a78dad Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:32:07 +0200
Subject: [PATCH 08/20] gnu: Add python-lazy.

* gnu/packages/python-xyz.scm (python-lazy): New variable.

Toggle diff (35 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d36eb615fd..2b5e2a94b2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16095,6 +16095,28 @@ (define-public python-typing-inspect
inspection of types defined in the Python standard typing module.")
(license license:expat)))
+(define-public python-lazy
+ (package
+ (name "python-lazy")
+ (version "1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference ; pypi release link leads to project page
+ (url "https://github.com/stefanholek/lazy")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1y3y35jr0nnfh32zgdrb4r4sf9v8k36j07z2m0g6kz7bf3azsgc5"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/stefanholek/lazy")
+ (synopsis "Lazy attributes for Python objects")
+ (description "Provides lazy attributes that are evaluated only once,
+the first time they are used. Subsequent uses return the results of the first
+call.")
+ (license license:bsd-2)))
+
(define-public python-lazy-object-proxy
(package
(name "python-lazy-object-proxy")
--
2.34.0
From c215af1ee2de09a03e87bf908c3e4ebac5174ce3 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:36:26 +0200
Subject: [PATCH 12/20] gnu: Add python-msk.

* gnu/packages/python-xyz.scm (python-msk): New variable.

Toggle diff (37 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 23f111092e..39c6741d2f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10788,6 +10788,30 @@ (define-public python-msgpack-transitional
(define-public python2-msgpack
(package-with-python2 python-msgpack))
+(define-public python-msk
+ (package
+ (name "python-msk")
+ (version "0.3.16")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "msk" version))
+ (sha256
+ (base32
+ "11zf2s5wdglzki2r05plx6j9gykwvbpdn8fbr3fnjz4g0vy1g9y6"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-colorama" ,python-colorama)
+ ("python-gitpython" ,python-gitpython)
+ ("python-msm" ,python-msm)
+ ("python-pygithub" ,python-pygithub)
+ ("python-requests" ,python-requests)))
+ (home-page "https://github.com/MycroftAI/mycroft-skills-kit")
+ (synopsis "Mycroft Skills Kit")
+ (description "Tool to help with creating, uploading, and upgrading Mycroft
+skills.")
+ (license license:asl2.0)))
+
(define-public python-msm
(package
(name "python-msm")
--
2.34.0
From c716eba3bcb200935ade8022e6c9b6accd168cc0 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:38:54 +0200
Subject: [PATCH 13/20] gnu: Add python-lingua-franca.

* gnu/packages/python-xyz.scm (python-lingua-franca): New variable.

Toggle diff (42 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 39c6741d2f..527cf80903 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -20308,6 +20308,35 @@ (define-public python-linecache2
(define-public python2-linecache2
(package-with-python2 python-linecache2))
+(define-public python-lingua-franca
+ (package
+ (name "python-lingua-franca")
+ (version "0.4.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/lingua-franca")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; Use newer version of pkg
+ (substitute* "requirements.txt"
+ (("python-dateutil==") "python-dateutil>="))
+ #t))
+ (sha256
+ (base32
+ "1wx1c8a2k9155z74113yn1xcs6y0zljbgan2pbbmzsvki8m0z6jn"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)))
+ (home-page "https://github.com/MycroftAI/lingua-franca")
+ (synopsis "Mycroft's multilingual text parsing and formatting library")
+ (description "Converts data into spoken equivalents.")
+ (license license:asl2.0)))
+
(define-public python-traceback2
(package
(name "python-traceback2")
--
2.34.0
From 12160ba8d72c6a5738bca7cc7f2f92ea95548f49 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 20:35:12 +0200
Subject: [PATCH 17/20] gnu: Add mycroft-mimic.

* gnu/packages/speech.scm (mycroft-mimic): New variable.

Toggle diff (59 lines)
diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
index cbc46b32b4..ad073322cf 100644
--- a/gnu/packages/speech.scm
+++ b/gnu/packages/speech.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
+;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,6 +46,7 @@ (define-module (gnu packages speech)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
@@ -237,6 +239,36 @@ (define-public mitlm
(home-page "https://github.com/mitlm/mitlm")
(license license:expat)))
+(define-public mycroft-mimic
+ (package
+ (name "mycroft-mimic")
+ (version "1.3.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/mimic1")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1agwgby9ql8r3x5rd1rgx3xp9y4cdg4pi3kqlz3vanv9na8nf3id"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("libtool" ,libtool)
+ ("automake" ,automake)
+ ("autoconf" ,autoconf)))
+ (inputs `(("alsa-lib" ,alsa-lib)
+ ("pcre2" ,pcre2)))
+ (synopsis "Mycroft's TTS engine, based on CMU's Flite (Festival Lite)")
+ (description "Mimic is a fast, lightweight Text-to-speech engine developed
+by Mycroft A.I. and VocaliD, based on Carnegie Mellon University’s Flite
+(Festival-Lite) software. Mimic takes in text and reads it out loud to create
+a high quality voice.")
+ (home-page "https://github.com/MycroftAI/mimic1")
+ (license license:asl2.0)))
+
(define-public speech-dispatcher
(package
(name "speech-dispatcher")
--
2.34.0
From 3f5b3fde4527c04c40aab777696061a424b31f09 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:21:07 +0200
Subject: [PATCH 20/20] gnu: Add python-mycroft-core.

* gnu/packages/python-xyz.scm (python-mycroft-core): New variable.

Toggle diff (101 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 992c6fbd1b..e236b170c2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -206,6 +206,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
+ #:use-module (gnu packages speech)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages swig)
@@ -21685,6 +21686,86 @@ (define-public python2-more-itertools
(propagated-inputs
`(("python2-six" ,python2-six-bootstrap)))))
+(define-public python-mycroft-core
+ (package
+ (name "python-mycroft-core")
+ (version "21.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/mycroft-core")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1v5yb48y3zr4s0cgkid8y1zsi6x1wrhy1jfb9axzi090ammgy700"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-requirements
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Use newer version of pkg
+ (substitute* "requirements/requirements.txt"
+ (("mycroft-messagebus-client==") "mycroft-messagebus-client>=")
+ (("tornado==") "tornado>=")
+ (("pyserial==") "pyserial>=")
+ (("psutil==") "psutil>=")
+ (("padaos==") "padaos>=")
+ (("precise-runner==") "precise-runner>=")
+ (("pocketsphinx==") "pocketsphinx>=")
+ (("python-dateutil==") "python-dateutil>=")
+ (("fasteners==") "fasteners>=")
+ (("requests-futures==") "requests-futures>=")
+ (("pillow==") "pillow>=")
+ (("PyYAML==5.4") "PyYAML>=5.3.1")
+ (("pyxdg==") "pyxdg>="))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:" (getenv
+ "PYTHONPATH")))))))))
+ (inputs `(("mycroft-mimic" ,mycroft-mimic)
+ ("pocketsphinx" ,pocketsphinx)))
+ (propagated-inputs
+ `(("python-fasteners" ,python-fasteners)
+ ("python-inflection" ,python-inflection)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-mycroft-messagebus-client"
+ ,python-mycroft-messagebus-client)
+ ("python-psutil" ,python-psutil)
+ ("python-tornado" ,python-tornado-6)
+ ("python-petact" ,python-petact)
+ ("python-precise-runner" ,python-precise-runner)
+ ("python-padaos" ,python-padaos)
+ ("python-speech-recoginition" ,python-speech-recognition)
+ ("python-padatious" ,python-padatious)
+ ("python-msk" ,python-msk)
+ ("python-pillow" ,python-pillow)
+ ("python-gtts" ,python-gtts)
+ ("python-requests-futures" ,python-requests-futures)
+ ("python-pyserial" ,python-pyserial)
+ ("python-pocketsphinx" ,python-pocketsphinx)
+ ("python-adapt-parser" ,python-adapt-parser)
+ ("python-lingua-franca" ,python-lingua-franca)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-fasteners" ,python-fasteners)
+ ("python-pyee" ,python-pyee)
+ ("python-psutil" ,python-psutil)
+ ("python-fann2" ,python-fann2)
+ ("python-pyxdg" ,python-pyxdg)
+ ("python-websocket-client" ,python-websocket-client)
+ ("python-requests" ,python-requests)
+ ("python-requests-futures"
+ ,python-requests-futures)))
+ (home-page "https://github.com/HelloChatterbox/HolmesIV")
+ (synopsis "Mycroft Core, the Mycroft Artificial Intelligence platform")
+ (description "This module provides a hackable open source voice assistant - Mycroft")
+ (license license:asl2.0)))
+
(define-public python-mycroft-messagebus-client
(package
(name "python-mycroft-messagebus-client")
--
2.34.0
From 135d4b404bb00b10e27a9c464126d4fa02402758 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:23:50 +0200
Subject: [PATCH 04/20] gnu: Add python-padaos.

* gnu/packages/python-xyz.scm (python-padaos): New variable.

Toggle diff (31 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6152b82b6e..fd3a2e1b75 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14571,6 +14571,24 @@ (define-public python-pathlib
(define-public python2-pathlib
(package-with-python2 python-pathlib))
+(define-public python-padaos
+ (package
+ (name "python-padaos")
+ (version "0.1.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "padaos" version))
+ (sha256
+ (base32
+ "0wkd6p3ggf3ffsg3j47fgfcfmmj5k7h5rak88mbkr1r6r35mzh1a"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/MycroftAI/padaos")
+ (synopsis "Rigid, lightweight, dead-simple intent parser")
+ (description "Converts sentences into one big chunk of regex. Each intent
+is a single compiled regex matcher.")
+ (license license:expat)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.34.0
From 31ec8ea31331f55fae43bf2f0689be7db91e2de5 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 20:29:15 +0200
Subject: [PATCH 15/20] gnu: Add python-gtts.

* gnu/packages/python-xyz.scm (python-gtts): New variable.

Toggle diff (42 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 527cf80903..e70e21beaa 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17289,6 +17289,35 @@ (define-public python-graphene
with an associated set of resolve methods that know how to fetch data.")
(license license:expat)))
+(define-public python-gtts
+ (package
+ (name "python-gtts")
+ (version "2.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "gTTS" version))
+ (sha256
+ (base32
+ "0g467h1501kxw4zniym03xkz3766bdp6j2j5l04p11ki4h8smkw8"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-flake8" ,python-flake8)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-six" ,python-six)
+ ("python-testfixtures" ,python-testfixtures)))
+ (propagated-inputs
+ `(("python-click" ,python-click)
+ ("python-requests" ,python-requests)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/pndurette/gTTS")
+ (synopsis "Python interface to Google Translate text-to-speech API")
+ (description "Python library and CLI tool to interface with Google Translate
+text-to-speech API")
+ (license license:expat)))
+
(define-public python-nautilus
(package
(name "python-nautilus")
--
2.34.0
From d567ad4e5d7f36704fc6241ae0a6791355dbf09b Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:40:47 +0200
Subject: [PATCH 14/20] gnu: Add python-pocketsphinx.

* gnu/packages/python-xyz.scm (python-pocketsphinx): New variable.

Toggle diff (51 lines)
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index a7a3443707..acab5c1178 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -45,14 +45,44 @@ (define-module (gnu packages sphinx)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages time)
#:use-module (gnu packages python-science)
#:use-module (gnu packages graph))
+(define-public python-pocketsphinx
+ (package
+ (name "python-pocketsphinx")
+ (version "0.1.15")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bambocher/pocketsphinx-python")
+ (recursive? #t)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "18i1jw9138ldxigfcjz6rk9z2c2wc2ng2zdnkzippv45d5izkdz8"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("swig" ,swig)))
+ (propagated-inputs
+ `(("pulseaudio" ,pulseaudio)
+ ("alsa-lib" ,alsa-lib)))
+ (home-page "https://github.com/bambocher/pocketsphinx-python")
+ (synopsis "Python interface to CMU Sphinxbase and Pocketsphinx libraries")
+ (description "Python interface to CMU Sphinxbase and Pocketsphinx libraries")
+ (license license:bsd-3)))
+
(define-public python-sphinx
(package
(name "python-sphinx")
--
2.34.0
From 3ca8914bb993b6e23ffcd5836d932d9003a6d7b0 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sat, 18 Sep 2021 18:44:39 +0200
Subject: [PATCH 18/20] gnu: Add python-speech-recognition.

* gnu/packages/python-xyz.scm (python-speech-recognition): New variable.

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index eb902b95a2..03f734169d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -5631,6 +5631,31 @@ (define-public python-spectra
(define-public python2-spectra
(package-with-python2 python-spectra))
+(define-public python-speech-recognition
+ (package
+ (name "python-speech-recognition")
+ (version "3.8.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Uberi/speech_recognition")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1lq6g4kl3y1b4ch3b6wik7xy743x6pp5iald0jb9zxqgyxy1zsz4"))))
+ (build-system python-build-system)
+ (arguments
+ ;; Attempts to aquire sound card
+ '(#:tests? #f))
+ (inputs `(("python-pyaudio" ,python-pyaudio)))
+ (home-page "https://github.com/Uberi/speech_recognition")
+ (synopsis "Speech recognition module for Python")
+ (description "Library for performing speech recognition, with support for
+several engines and APIs, online and offline.")
+ (license license:bsd-2)))
+
(define-public python-pyspnego
(package
(name "python-pyspnego")
--
2.34.0
From b7494794d545306bb61a6976d0618e47d2c3a366 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:17:21 +0200
Subject: [PATCH 16/20] gnu: Add python-mycroft-messagebus-client.

* gnu/packages/python-xyz.scm (python-mycroft-messagebus-client): New variable.

Toggle diff (36 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e70e21beaa..eb902b95a2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21660,6 +21660,29 @@ (define-public python2-more-itertools
(propagated-inputs
`(("python2-six" ,python2-six-bootstrap)))))
+(define-public python-mycroft-messagebus-client
+ (package
+ (name "python-mycroft-messagebus-client")
+ (version "0.9.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "mycroft-messagebus-client" version))
+ (sha256
+ (base32
+ "08vsamppk12a15yiv5ra6rr3x3psinsln7y06aw4abpj6cja8pgw"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-pyee" ,python-pyee)
+ ("python-websocket-client"
+ ,python-websocket-client)))
+ (home-page "https://github.com/MycroftAI/mycroft-messagebus-client")
+ (synopsis "Mycroft Messagebus Client")
+ (description "This module provides simple interface for the mycroft
+messagebus and can be used to connect to mycroft, send messages and react
+to messages sent by the Mycroft system.")
+ (license license:asl2.0)))
+
(define-public python-latexcodec
(package
(name "python-latexcodec")
--
2.34.0
From 4b139255155356ef68585b794c7374f146dfc832 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:34:56 +0200
Subject: [PATCH 10/20] gnu: Add python-adapt-parser.

* gnu/packages/python-xyz.scm (python-adapt-parser): New variable.

Toggle diff (37 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b7a816fef8..426295844a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14267,6 +14267,30 @@ (define-public python-translitcodec
(define-public python2-translitcodec
(package-with-python2 python-translitcodec))
+(define-public python-adapt-parser
+ (package
+ (name "python-adapt-parser")
+ (version "0.5.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/MycroftAI/adapt")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "08ma098saysspm7bbja8ic26lqg2bibz51bzfnifdch89r30i23n"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-pyee" ,python-pyee)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/MycroftAI/adapt")
+ (synopsis "Text-to-intent parsing framework")
+ (description "Flexible and extensible way to parse natural language text
+into a structured intent.")
+ (license license:asl2.0)))
+
(define-public python-anyqt
(package
(name "python-anyqt")
--
2.34.0
From 2e87e2e4dd0cd8a8c4cd362e459004c024685c78 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:25:02 +0200
Subject: [PATCH 05/20] gnu: Add python-precise-runner.

* gnu/packages/python-xyz.scm (python-precise-runner): New variable.

Toggle diff (41 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index fd3a2e1b75..82d11f04aa 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -135,6 +135,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages adns)
#:use-module (gnu packages aidc)
#:use-module (gnu packages attr)
+ #:use-module (gnu packages audio)
#:use-module (gnu packages backup)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
@@ -23094,6 +23095,26 @@ (define-public python-precis-i18n
RFC 8265 and RFC 8266.")
(license license:expat)))
+(define-public python-precise-runner
+ (package
+ (name "python-precise-runner")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "precise-runner" version))
+ (sha256
+ (base32
+ "03dqjvw0mafxs5hakhvb3ah8f157n8632a54spss7w2bzc4l4ihs"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-pyaudio" ,python-pyaudio)))
+ (home-page "https://github.com/MycroftAI/mycroft-precise")
+ (synopsis "Wrapper to use Mycroft Precise Wake Word Listener")
+ (description "Audio stream monitoring wrapper which triggers an event when
+it recognizes a specific phrase.")
+ (license license:asl2.0)))
+
(define-public python-absl-py
(package
(name "python-absl-py")
--
2.34.0
From a5466aab965cce20c7b490af7b98628769cba239 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Wed, 8 Dec 2021 12:44:47 +0100
Subject: [PATCH 19/20] gnu: python-pillow: Update to 8.4.0.

* gnu/packages/python-xyz.scm (python-pillow): Update to 8.4.0.

Toggle diff (23 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 03f734169d..992c6fbd1b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -7018,14 +7018,14 @@ (define-public python-pikepdf
(define-public python-pillow
(package
(name "python-pillow")
- (version "8.1.1")
+ (version "8.4.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Pillow" version))
(sha256
(base32
- "086g7nhv52wclrwnzbzs2x3nvyzs2hfq1bvgivsrp5f7r7wiiz7n"))))
+ "1vbn66rlzpqfvbca569wdvxzp7biwcnqajs674694hg1aqygiqmq"))))
(build-system python-build-system)
(native-inputs
`(("python-pytest" ,python-pytest)))
--
2.34.0
M
M
Morgan Smith wrote on 30 Dec 2021 09:12
control message for bug #50663
(address . control@debbugs.gnu.org)
BYAPR05MB4023F8D5B3C698DB921E7B79C5459@BYAPR05MB4023.namprd05.prod.outlook.com
retitle 50663 [PATCH] gnu: Add Mycroft Voice Assistant
quit
N
N
Nicolas Goaziou wrote on 24 Jan 2022 23:45
Re: [bug#50663] Add Mycroft - Voice Assistant
(name . phodina via Guix-patches via)(address . guix-patches@gnu.org)
87r18wbvnq.fsf@nicolasgoaziou.fr
Hello,

phodina via Guix-patches via <guix-patches@gnu.org> writes:

Toggle quote (3 lines)
> The aim of this patch set is to bring in the MyCroft - private and
> open Voice Assistant.

Thank you.

I fixed some descriptions, removed labels from inputs, fixed compilation
with GCC 10 (for Mimic). Then I tried to apply the patch set. Alas
Mycroft core fails to build. You may want to have a look at it.

I'm sending back the updated patches to you, if that helps.

Regards,
--
Nicolas Goaziou
From a8e11183ad26ec2bc601c5a4e8265a10ce52948e Mon Sep 17 00:00:00 2001
Message-Id: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:15:41 +0200
Subject: [PATCH v2 01/19] gnu: Add python-requests-futures.

* gnu/packages/python-xyz.scm (python-requests-futures): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8bd5f655ba..4500121e10 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22223,6 +22223,29 @@ (define-public python-requests-file
(define-public python2-requests-file
(package-with-python2 python-requests-file))
+(define-public python-requests-futures
+ (package
+ (name "python-requests-futures")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "requests-futures" version))
+ (sha256
+ (base32
+ "0j611g1wkn98qp2b16kqz7lfz29a153jyfm02r3h8n0rpw17am1m"))))
+ (build-system python-build-system)
+ (arguments
+ ;; The test tries to open a connection to a remote server.
+ `(#:tests? #f))
+ (propagated-inputs
+ (list python-requests))
+ (home-page "https://github.com/ross/requests-futures")
+ (synopsis "Asynchronous Python HTTP for humans")
+ (description "This package is a small add-on for the Python Requests HTTP
+library. It makes use of @code{concurrent.futures}.")
+ (license license:asl2.0)))
+
(define-public python-identify
(package
(name "python-identify")
--
2.34.0
From f0b3d8e874ec2bba9851166bfa27cf34ca1a53fe Mon Sep 17 00:00:00 2001
Message-Id: <f0b3d8e874ec2bba9851166bfa27cf34ca1a53fe.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:19:21 +0200
Subject: [PATCH v2 02/19] gnu: Add python-pyee.

* gnu/packages/python-xyz.scm (python-pyee): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4500121e10..2e90f540f4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17733,6 +17733,31 @@ (define-public python-pyev
(define-public python2-pyev
(package-with-python2 python-pyev))
+(define-public python-pyee
+ (package
+ (name "python-pyee")
+ (version "8.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyee" version))
+ (sha256
+ (base32
+ "0cgxbdr4zmil03wwr5fv58789i51gka8a9fxm1dgkf5xs9dwrnlj"))))
+ (build-system python-build-system)
+ (native-inputs
+ (list python-pytest-trio python-pytest-asyncio python-pytest-runner
+ python-pytest python-mock))
+ (propagated-inputs
+ (list python-vcversioner python-twisted python-trio))
+ (home-page "https://github.com/jfhbrook/pyee")
+ (synopsis "Port of Node.js's EventEmitter to Python")
+ (description "Pyee supplies a @code{EventEmitter} object that is similar
+to the @code{EventEmitter} class from Node.js. It also supplies a number of
+subclasses with added support for async and threaded programming in Python,
+such as async/await.")
+ (license license:expat)))
+
(define-public python-imagesize
(package
(name "python-imagesize")
--
2.34.0
From 599b00e8f24ebaa8951e9510f9c2956b732dad1b Mon Sep 17 00:00:00 2001
Message-Id: <599b00e8f24ebaa8951e9510f9c2956b732dad1b.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 24 Jan 2022 15:56:57 +0100
Subject: [PATCH v2 03/19] gnu: Add python-fann2.

* gnu/packages/python-xyz.scm (python-fann2): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2e90f540f4..f05827a1a4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -177,6 +177,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages libidn)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
+ #:use-module (gnu packages machine-learning)
#:use-module (gnu packages man)
#:use-module (gnu packages markup)
#:use-module (gnu packages maths)
@@ -19134,6 +19135,25 @@ (define-public python-factory-boy
current test, while only declaring the test-specific fields")
(license license:expat)))
+(define-public python-fann2
+ (package
+ (name "python-fann2")
+ (version "1.0.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fann2" version))
+ (sha256
+ (base32
+ "17zv6hbq26qg9jmsshx3xnnnv203fr4cyjg4v3rgq38a5i5agv2k"))))
+ (build-system python-build-system)
+ (native-inputs (list swig))
+ (propagated-inputs (list fann))
+ (home-page "https://github.com/FutureLinkCorporation/fann2")
+ (synopsis "Fast Artificial Neural Network library (FANN) Python bindings")
+ (description "This package provides Python bindings for Fast Artificial
+Neural Networks (FANN) 2.2.0.")
+ (license license:lgpl2.1)))
(define-public python-translate-toolkit
(package
(name "python-translate-toolkit")
--
2.34.0
From 5abc0b770c771b54ed7fb90ef36ebee76391a3cc Mon Sep 17 00:00:00 2001
Message-Id: <5abc0b770c771b54ed7fb90ef36ebee76391a3cc.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:23:50 +0200
Subject: [PATCH v2 04/19] gnu: Add python-padaos.

* gnu/packages/python-xyz.scm (python-padaos): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f05827a1a4..c1ea6c47f6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15040,6 +15040,27 @@ (define-public python-pathlib
(define-public python2-pathlib
(package-with-python2 python-pathlib))
+(define-public python-padaos
+ (package
+ (name "python-padaos")
+ (version "0.1.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "padaos" version))
+ (sha256
+ (base32
+ "0wkd6p3ggf3ffsg3j47fgfcfmmj5k7h5rak88mbkr1r6r35mzh1a"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/MycroftAI/padaos")
+ (synopsis "Rigid, lightweight, simple intent parser")
+ (description "To deploy an intent parser into production with an automated
+feedback loop, it's essential that the new data doesn't interfere with the old
+data. It's also necessary that the parser can learn from sentences that
+closely match written English (or any other language). That's what Padaos
+does.")
+ (license license:expat)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.34.0
From 048e7f578828ac84944de827d06d0538434aea70 Mon Sep 17 00:00:00 2001
Message-Id: <048e7f578828ac84944de827d06d0538434aea70.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:25:02 +0200
Subject: [PATCH v2 05/19] gnu: Add python-precise-runner.

* gnu/packages/python-xyz.scm (python-precise-runner): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c1ea6c47f6..25c10752e6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -139,6 +139,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages adns)
#:use-module (gnu packages aidc)
#:use-module (gnu packages attr)
+ #:use-module (gnu packages audio)
#:use-module (gnu packages backup)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
@@ -23378,6 +23379,27 @@ (define-public python-precis-i18n
RFC 8265 and RFC 8266.")
(license license:expat)))
+(define-public python-precise-runner
+ (package
+ (name "python-precise-runner")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "precise-runner" version))
+ (sha256
+ (base32
+ "03dqjvw0mafxs5hakhvb3ah8f157n8632a54spss7w2bzc4l4ihs"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pyaudio))
+ (home-page "https://github.com/MycroftAI/mycroft-precise")
+ (synopsis "Wrapper to use Mycroft Precise Wake Word Listener")
+ (description "Precise is a wake word listener. The software monitors an
+audio stream---usually a microphone---and when it recognizes a specific phrase
+it triggers an event.")
+ (license license:asl2.0)))
+
(define-public python-absl-py
(package
(name "python-absl-py")
--
2.34.0
From bdb397ea8b48a8de193482f0394a8f6ddda2d0f4 Mon Sep 17 00:00:00 2001
Message-Id: <bdb397ea8b48a8de193482f0394a8f6ddda2d0f4.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:26:12 +0200
Subject: [PATCH v2 06/19] gnu: Add python-petact.

* gnu/packages/python-xyz.scm (python-petact): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 25c10752e6..9be5e77be8 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10235,6 +10235,24 @@ (define-public python2-pep517
,@(package-arguments base)))
(native-inputs `()))))
+(define-public python-petact
+ (package
+ (name "python-petact")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "petact" version))
+ (sha256
+ (base32
+ "1rjh0fjimmixbvrv6znkfrfa83ndjc4pgyfyl90iwq3az120vjsx"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/matthewscholefield/petact")
+ (synopsis "Library for installing and updating compressed tar files")
+ (description "Petact is a library used for installing and updating
+compressed tar files.")
+ (license license:expat))) ; MIT
+
(define-public python-pyflakes
(package
(name "python-pyflakes")
--
2.34.0
From 96fa261f50a067a3b1e08d750bc875bd0f3055e6 Mon Sep 17 00:00:00 2001
Message-Id: <96fa261f50a067a3b1e08d750bc875bd0f3055e6.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:29:42 +0200
Subject: [PATCH v2 07/19] gnu: Add python-padatious.

* gnu/packages/python-xyz.scm (python-padatious): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9be5e77be8..c8230030ff 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -148,6 +148,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
+ #:use-module (gnu packages digest)
#:use-module (gnu packages django)
#:use-module (gnu packages djvu)
#:use-module (gnu packages docker)
@@ -15080,6 +15081,26 @@ (define-public python-padaos
does.")
(license license:expat)))
+(define-public python-padatious
+ (package
+ (name "python-padatious")
+ (version "0.4.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "padatious" version))
+ (sha256
+ (base32
+ "0xbgf75kxclacgairid8m948hrrngcxhykr1wkvav32fp58z4wg4"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-fann2 python-padaos python-xxhash))
+ (home-page "https://github.com/MycroftAI/padatious")
+ (synopsis "Neural network intent parser")
+ (description "Padatious is an efficient and agile neural network intent
+parser. It is a core component of Mycroft AI.")
+ (license license:asl2.0)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.34.0
From d7e819a3d0803aa8bb3a361803fa60697e60f8db Mon Sep 17 00:00:00 2001
Message-Id: <d7e819a3d0803aa8bb3a361803fa60697e60f8db.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:32:07 +0200
Subject: [PATCH v2 08/19] gnu: Add python-lazy.

* gnu/packages/python-xyz.scm (python-lazy): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c8230030ff..534aeabec2 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16527,6 +16527,28 @@ (define-public python-typing-inspect
inspection of types defined in the Python standard typing module.")
(license license:expat)))
+(define-public python-lazy
+ (package
+ (name "python-lazy")
+ (version "1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference ;pypi release link leads to project page
+ (url "https://github.com/stefanholek/lazy")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1y3y35jr0nnfh32zgdrb4r4sf9v8k36j07z2m0g6kz7bf3azsgc5"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/stefanholek/lazy")
+ (synopsis "Lazy attributes for Python objects")
+ (description "This library provides lazy attributes that are evaluated
+only once, the first time they are used. Subsequent uses return the results
+of the first call.")
+ (license license:bsd-2)))
+
(define-public python-lazy-object-proxy
(package
(name "python-lazy-object-proxy")
--
2.34.0
From ffbd98650b530679b923fe67cdb209cb6a438c9d Mon Sep 17 00:00:00 2001
Message-Id: <ffbd98650b530679b923fe67cdb209cb6a438c9d.1643064268.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:33:03 +0200
Subject: [PATCH v2 09/19] gnu: Add python-pako.

* gnu/packages/python-xyz.scm (python-pako): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 534aeabec2..6f4c88a953 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15101,6 +15101,26 @@ (define-public python-padatious
parser. It is a core component of Mycroft AI.")
(license license:asl2.0)))
+(define-public python-pako
+ (package
+ (name "python-pako")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pako" version))
+ (sha256
+ (base32
+ "07r3f86idlxb2x2mvy24fzkxyq5xalkbmk0zmqva7341pdrs0cy0"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-appdirs))
+ (home-page "https://github.com/MycroftAI/pako")
+ (synopsis "Universal package manager library")
+ (description
+ "Pako provides a unified way to handle native package managers.")
+ (license license:asl2.0)))
+
(define-public python2-pathlib2
(package
(name "python2-pathlib2")
--
2.34.0
From 39abe4f0a6aefe087073d7546fffa6b22de4400e Mon Sep 17 00:00:00 2001
Message-Id: <39abe4f0a6aefe087073d7546fffa6b22de4400e.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:34:56 +0200
Subject: [PATCH v2 10/19] gnu: Add python-adapt-parser.

* gnu/packages/python-xyz.scm (python-adapt-parser): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6f4c88a953..2706dac029 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14746,6 +14746,31 @@ (define-public python-translitcodec
(define-public python2-translitcodec
(package-with-python2 python-translitcodec))
+(define-public python-adapt-parser
+ (package
+ (name "python-adapt-parser")
+ (version "0.5.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/MycroftAI/adapt")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "08ma098saysspm7bbja8ic26lqg2bibz51bzfnifdch89r30i23n"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pyee python-six))
+ (home-page "https://github.com/MycroftAI/adapt")
+ (synopsis "Text-to-intent parsing framework")
+ (description "The Adapt intent parser is a flexible and extensible intent
+definition and determination framework. It is intended to parse natural
+language text into a structured intent that can then be invoked
+programatically.")
+ (license license:asl2.0)))
+
(define-public python-anyqt
(package
(name "python-anyqt")
--
2.34.0
From 10c02e7b77e51e3946fff4c1ca0f9ada154fadb7 Mon Sep 17 00:00:00 2001
Message-Id: <10c02e7b77e51e3946fff4c1ca0f9ada154fadb7.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 24 Jan 2022 16:01:00 +0100
Subject: [PATCH v2 11/19] gnu: Add python-msm.

* gnu/packages/python-xyz.scm (python-msm): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 33 ++++++++++++++++++++++++++++++---
1 file changed, 30 insertions(+), 3 deletions(-)

Toggle diff (58 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2706dac029..aec75b3ac4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -11196,6 +11196,33 @@ (define-public python-msgpack-transitional
(define-public python2-msgpack
(package-with-python2 python-msgpack))
+(define-public python-msm
+ (package
+ (name "python-msm")
+ (version "0.8.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "msm" version))
+ (sha256
+ (base32
+ "00z588imq7q33iv3hn83mf2cyqrbs5f6zzyfa6445ainxvskkzz2"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-fasteners
+ python-gitpython
+ python-lazy
+ python-pako
+ python-pyxdg
+ python-pyyaml
+ python-requests))
+ (home-page "https://github.com/MycroftAI/mycroft-skills-manager")
+ (synopsis "Mycroft skills manager")
+ (description "This package provides a command line tool for interacting
+with the Mycroft skills repository.")
+ (license license:asl2.0)))
+
+
(define-public python-netaddr
(package
(name "python-netaddr")
@@ -11205,14 +11232,14 @@ (define-public python-netaddr
(method url-fetch)
(uri (pypi-uri "netaddr" version))
(sha256
- (base32
- "0hx2npi0wnhwlcybilgwlddw6qffx1mb7a3sj4p9s7bvl33mgk6n"))))
+ (base32
+ "0hx2npi0wnhwlcybilgwlddw6qffx1mb7a3sj4p9s7bvl33mgk6n"))))
(build-system python-build-system)
(arguments `(#:tests? #f)) ;; No tests.
(home-page "https://github.com/drkjam/netaddr/")
(synopsis "Pythonic manipulation of network addresses")
(description
- "A Python library for representing and manipulating IPv4, IPv6, CIDR, EUI
+ "A Python library for representing and manipulating IPv4, IPv6, CIDR, EUI
and MAC network addresses.")
(license license:bsd-3)))
--
2.34.0
From 53b3478c8df3f8bbe39a6215322afc2a314437a5 Mon Sep 17 00:00:00 2001
Message-Id: <53b3478c8df3f8bbe39a6215322afc2a314437a5.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:36:26 +0200
Subject: [PATCH v2 12/19] gnu: Add python-msk.

* gnu/packages/python-xyz.scm (python-msk): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index aec75b3ac4..ff33d7adba 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -11196,6 +11196,27 @@ (define-public python-msgpack-transitional
(define-public python2-msgpack
(package-with-python2 python-msgpack))
+(define-public python-msk
+ (package
+ (name "python-msk")
+ (version "0.3.16")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "msk" version))
+ (sha256
+ (base32
+ "11zf2s5wdglzki2r05plx6j9gykwvbpdn8fbr3fnjz4g0vy1g9y6"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-colorama python-gitpython python-msm python-pygithub
+ python-requests))
+ (home-page "https://github.com/MycroftAI/mycroft-skills-kit")
+ (synopsis "Mycroft Skills Kit")
+ (description "MSK is a tool to help with creating, uploading, and
+upgrading Mycroft skills.")
+ (license license:asl2.0)))
+
(define-public python-msm
(package
(name "python-msm")
--
2.34.0
From 4a52fa1d3009007376af92d01f8574dbebd11dd0 Mon Sep 17 00:00:00 2001
Message-Id: <4a52fa1d3009007376af92d01f8574dbebd11dd0.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:38:54 +0200
Subject: [PATCH v2 13/19] gnu: Add python-lingua-franca.

* gnu/packages/python-xyz.scm (python-lingua-franca): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ff33d7adba..ede522d61e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -20542,6 +20542,36 @@ (define-public python-linecache2
(define-public python2-linecache2
(package-with-python2 python-linecache2))
+(define-public python-lingua-franca
+ (package
+ (name "python-lingua-franca")
+ (version "0.4.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/lingua-franca")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wx1c8a2k9155z74113yn1xcs6y0zljbgan2pbbmzsvki8m0z6jn"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirements
+ (lambda _
+ (substitute* "requirements.txt"
+ (("python-dateutil==") "python-dateutil>=")))))))
+ (propagated-inputs
+ (list python-dateutil))
+ (home-page "https://github.com/MycroftAI/lingua-franca")
+ (synopsis "Mycroft's multilingual text parsing and formatting library")
+ (description "Lingua Franca converts data into spoken equivalents.")
+ (license license:asl2.0)))
+
(define-public python-traceback2
(package
(name "python-traceback2")
--
2.34.0
From 79fea0ab52d4f390f3640c173644e2ae421af656 Mon Sep 17 00:00:00 2001
Message-Id: <79fea0ab52d4f390f3640c173644e2ae421af656.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 24 Jan 2022 16:03:28 +0100
Subject: [PATCH v2 14/19] gnu: Add python-pocketsphinx.

* gnu/packages/sphinx.scm (python-pocketsphinx): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/sphinx.scm | 31 ++++++++++++++++++++++++++++++-
1 file changed, 30 insertions(+), 1 deletion(-)

Toggle diff (60 lines)
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index dfbc3194ea..c62f28b24e 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -46,15 +46,44 @@ (define-module (gnu packages sphinx)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages time)
#:use-module (gnu packages python-science)
#:use-module (gnu packages graph))
+(define-public python-pocketsphinx
+ (package
+ (name "python-pocketsphinx")
+ (version "0.1.15")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bambocher/pocketsphinx-python")
+ (recursive? #t)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "18i1jw9138ldxigfcjz6rk9z2c2wc2ng2zdnkzippv45d5izkdz8"))))
+ (build-system python-build-system)
+ (native-inputs
+ (list python-pytest swig))
+ (propagated-inputs
+ (list pulseaudio alsa-lib))
+ (home-page "https://github.com/bambocher/pocketsphinx-python")
+ (synopsis "Python interface to CMU Sphinxbase and Pocketsphinx libraries")
+ (description "This package provides a Python interface to CMU Sphinxbase
+and Pocketsphinx libraries.")
+ (license license:bsd-3)))
+
(define-public python-sphinx
(package
(name "python-sphinx")
@@ -97,7 +126,7 @@ (define-public python-sphinx
python-sphinxcontrib-serializinghtml))
(native-inputs
(list graphviz
- imagemagick ;for "convert"
+ imagemagick ;for "convert"
python-html5lib
python-mock
python-nose
--
2.34.0
From 8f8dcdbd69c76beed20bdc88c86a5033d54f8dcc Mon Sep 17 00:00:00 2001
Message-Id: <8f8dcdbd69c76beed20bdc88c86a5033d54f8dcc.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 24 Jan 2022 16:05:19 +0100
Subject: [PATCH v2 15/19] gnu: Add python-gtts.

* gnu/packages/python-xyz.scm (python-gtts): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ede522d61e..e8b7139073 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17705,6 +17705,35 @@ (define-public python-graphene
with an associated set of resolve methods that know how to fetch data.")
(license license:expat)))
+(define-public python-gtts
+ (package
+ (name "python-gtts")
+ (version "2.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "gTTS" version))
+ (sha256
+ (base32
+ "0g467h1501kxw4zniym03xkz3766bdp6j2j5l04p11ki4h8smkw8"))))
+ (build-system python-build-system)
+ (native-inputs
+ (list python-flake8
+ python-mock
+ python-pytest
+ python-pytest-cov
+ python-six
+ python-testfixtures))
+ (propagated-inputs
+ (list python-click
+ python-requests
+ python-six))
+ (home-page "https://github.com/pndurette/gTTS")
+ (synopsis "Python interface to Google Translate text-to-speech API")
+ (description "This package provides a Python library and CLI tool to
+interface with Google Translate text-to-speech API.")
+ (license license:expat)))
+
(define-public python-random2
(package
(name "python-random2")
--
2.34.0
From 31b5eee023b1bd62775157d281bfb34134fdd6fc Mon Sep 17 00:00:00 2001
Message-Id: <31b5eee023b1bd62775157d281bfb34134fdd6fc.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:17:21 +0200
Subject: [PATCH v2 16/19] gnu: Add python-mycroft-messagebus-client.

* gnu/packages/python-xyz.scm (python-mycroft-messagebus-client): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e8b7139073..f3c05232e1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21943,6 +21943,27 @@ (define-public python2-more-itertools
(propagated-inputs
`(("python2-six" ,python2-six-bootstrap)))))
+(define-public python-mycroft-messagebus-client
+ (package
+ (name "python-mycroft-messagebus-client")
+ (version "0.9.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "mycroft-messagebus-client" version))
+ (sha256
+ (base32
+ "08vsamppk12a15yiv5ra6rr3x3psinsln7y06aw4abpj6cja8pgw"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pyee python-websocket-client))
+ (home-page "https://github.com/MycroftAI/mycroft-messagebus-client")
+ (synopsis "Mycroft Messagebus Client")
+ (description "This module provides simple interface for the mycroft
+messagebus and can be used to connect to mycroft, send messages and react
+to messages sent by the Mycroft system.")
+ (license license:asl2.0)))
+
(define-public python-latexcodec
(package
(name "python-latexcodec")
--
2.34.0
From a8500175c36ce90a97d78d9bfcfbcb1db40af9cc Mon Sep 17 00:00:00 2001
Message-Id: <a8500175c36ce90a97d78d9bfcfbcb1db40af9cc.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 20:35:12 +0200
Subject: [PATCH v2 17/19] gnu: Add mycroft-mimic.

* gnu/packages/speech.scm (mycroft-mimic): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/speech.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm
index f6ca6099de..98b6ebffe2 100644
--- a/gnu/packages/speech.scm
+++ b/gnu/packages/speech.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
+;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,6 +46,7 @@ (define-module (gnu packages speech)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
@@ -232,6 +234,34 @@ (define-public mitlm
(home-page "https://github.com/mitlm/mitlm")
(license license:expat)))
+(define-public mycroft-mimic
+ (package
+ (name "mycroft-mimic")
+ (version "1.3.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/mimic1")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1agwgby9ql8r3x5rd1rgx3xp9y4cdg4pi3kqlz3vanv9na8nf3id"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags '("CFLAGS=-fcommon"))) ;for GCC-10
+ (native-inputs
+ (list pkg-config libtool automake autoconf))
+ (inputs (list alsa-lib pcre2))
+ (synopsis "Mycroft's TTS engine, based on CMU's Flite (Festival Lite)")
+ (description "Mimic is a fast, lightweight Text-to-speech engine developed
+by Mycroft A.I. and VocaliD, based on Carnegie Mellon University’s Flite
+(Festival-Lite) software. Mimic takes in text and reads it out loud to create
+a high quality voice.")
+ (home-page "https://github.com/MycroftAI/mimic1")
+ (license license:asl2.0)))
+
(define-public speech-dispatcher
(package
(name "speech-dispatcher")
--
2.34.0
From cc13f0700b7b2c3f49e76a45b38f3f7a72a0d6a5 Mon Sep 17 00:00:00 2001
Message-Id: <cc13f0700b7b2c3f49e76a45b38f3f7a72a0d6a5.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 24 Jan 2022 16:07:12 +0100
Subject: [PATCH v2 18/19] gnu: Add python-speech-recognition.

* gnu/packages/python-xyz.scm (python-speech-recognition): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f3c05232e1..4353797e83 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -5787,6 +5787,31 @@ (define-public python-spectra
@end enumerate\n")
(license license:expat)))
+(define-public python-speech-recognition
+ (package
+ (name "python-speech-recognition")
+ (version "3.8.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Uberi/speech_recognition")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1lq6g4kl3y1b4ch3b6wik7xy743x6pp5iald0jb9zxqgyxy1zsz4"))))
+ (build-system python-build-system)
+ (arguments
+ ;; Attempts to aquire sound card
+ '(#:tests? #f))
+ (inputs (list python-pyaudio))
+ (home-page "https://github.com/Uberi/speech_recognition")
+ (synopsis "Speech recognition module for Python")
+ (description "This package is a Python library for performing speech
+recognition, with support for several engines and APIs, online and offline.")
+ (license license:bsd-2)))
+
(define-public python-pyspnego
(package
(name "python-pyspnego")
--
2.34.0
From 51e054b823c60442317bc3487a0c769f14de9d1f Mon Sep 17 00:00:00 2001
Message-Id: <51e054b823c60442317bc3487a0c769f14de9d1f.1643064269.git.mail@nicolasgoaziou.fr>
In-Reply-To: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
References: <a8e11183ad26ec2bc601c5a4e8265a10ce52948e.1643064268.git.mail@nicolasgoaziou.fr>
From: Petr Hodina <phodina@protonmail.com>
Date: Fri, 30 Jul 2021 17:21:07 +0200
Subject: [PATCH v2 19/19] gnu: Add python-mycroft-core.

* gnu/packages/python-xyz.scm (python-mycroft-core): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
---
gnu/packages/python-xyz.scm | 80 +++++++++++++++++++++++++++++++++++++
1 file changed, 80 insertions(+)

Toggle diff (100 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4353797e83..1834152c3c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -210,6 +210,7 @@ (define-module (gnu packages python-xyz)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
+ #:use-module (gnu packages speech)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages swig)
@@ -21968,6 +21969,85 @@ (define-public python2-more-itertools
(propagated-inputs
`(("python2-six" ,python2-six-bootstrap)))))
+(define-public python-mycroft-core
+ (package
+ (name "python-mycroft-core")
+ (version "21.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/MycroftAI/mycroft-core")
+ (commit (string-append "release/v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02r0vxw0hsihnvviwn4fyspwky3kwq42f9z455q1s70k0snzhb28"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-requirements
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Use newer version of pkg
+ (substitute* "requirements/requirements.txt"
+ (("mycroft-messagebus-client==") "mycroft-messagebus-client>=")
+ (("tornado==") "tornado>=")
+ (("pyserial==") "pyserial>=")
+ (("psutil==") "psutil>=")
+ (("padaos==") "padaos>=")
+ (("precise-runner==") "precise-runner>=")
+ (("pocketsphinx==") "pocketsphinx>=")
+ (("python-dateutil==") "python-dateutil>=")
+ (("fasteners==") "fasteners>=")
+ (("requests-futures==") "requests-futures>=")
+ (("pillow==") "pillow>=")
+ (("PyYAML==5.4") "PyYAML>=5.3.1")
+ (("pyxdg==") "pyxdg>=")
+ (("requests>=2.20.0,<2.26.0") "requests>=2.20.0"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:"
+ (or (getenv "PYTHONPATH")
+ "")))))))))
+ (inputs (list mycroft-mimic pocketsphinx))
+ (propagated-inputs
+ (list python-fasteners
+ python-inflection
+ python-pyxdg
+ python-mycroft-messagebus-client
+ python-psutil
+ python-tornado-6
+ python-petact
+ python-precise-runner
+ python-padaos
+ python-speech-recognition
+ python-padatious
+ python-msk
+ python-pillow
+ python-gtts
+ python-requests-futures
+ python-pyserial
+ python-pocketsphinx
+ python-adapt-parser
+ python-lingua-franca
+ python-pyyaml
+ python-fasteners
+ python-pyee
+ python-psutil
+ python-fann2
+ python-pyxdg
+ python-websocket-client
+ python-requests
+ python-requests-futures))
+ (home-page "https://github.com/HelloChatterbox/HolmesIV")
+ (synopsis "Mycroft Core, the Mycroft Artificial Intelligence platform")
+ (description "This module provides a hackable open source voice assistant - Mycroft")
+ (license license:asl2.0)))
+
(define-public python-mycroft-messagebus-client
(package
(name "python-mycroft-messagebus-client")
--
2.34.0
E
E
Efraim Flashner wrote on 25 Jan 2022 11:49
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)
Ye/VvVG2FWBFUE8a@3900XT
On Mon, Jan 24, 2022 at 11:45:13PM +0100, Nicolas Goaziou wrote:
Toggle quote (19 lines)
> Hello,
>
> phodina via Guix-patches via <guix-patches@gnu.org> writes:
>
> > The aim of this patch set is to bring in the MyCroft - private and
> > open Voice Assistant.
>
> Thank you.
>
> I fixed some descriptions, removed labels from inputs, fixed compilation
> with GCC 10 (for Mimic). Then I tried to apply the patch set. Alas
> Mycroft core fails to build. You may want to have a look at it.
>
> I'm sending back the updated patches to you, if that helps.
>
> Regards,
> --
> Nicolas Goaziou

I made some changes to python-mycroft-core but I couldn't get it to pass
the sanity-check or the test suite. I've attached my changes. Also make
sure you sort the inputs alphabetically, I found at least a duplicate
python-pyxdg. Also some of the patches include a line or two of
unrelated indentation changes in other packages.

--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
Toggle diff (102 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1834152c3c..b9c4529cd5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21986,63 +21986,61 @@ (define-public python-mycroft-core
"02r0vxw0hsihnvviwn4fyspwky3kwq42f9z455q1s70k0snzhb28"))))
(build-system python-build-system)
(arguments
- `(#:phases
+ `(#:tests? #f ; TODO
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-requirements
(lambda* (#:key inputs #:allow-other-keys)
- ;; Use newer version of pkg
+ ;; Use newer version of packages.
+ (setenv "MYCROFT_LOOSE_REQUIREMENTS" "1")
(substitute* "requirements/requirements.txt"
- (("mycroft-messagebus-client==") "mycroft-messagebus-client>=")
- (("tornado==") "tornado>=")
- (("pyserial==") "pyserial>=")
- (("psutil==") "psutil>=")
- (("padaos==") "padaos>=")
- (("precise-runner==") "precise-runner>=")
- (("pocketsphinx==") "pocketsphinx>=")
- (("python-dateutil==") "python-dateutil>=")
- (("fasteners==") "fasteners>=")
- (("requests-futures==") "requests-futures>=")
- (("pillow==") "pillow>=")
- (("PyYAML==5.4") "PyYAML>=5.3.1")
- (("pyxdg==") "pyxdg>=")
(("requests>=2.20.0,<2.26.0") "requests>=2.20.0"))))
+ (replace 'sanity-check
+ (lambda args
+ ;(setenv "PYTHONPATH"
+ ; (string-append "./build/lib:"
+ ; (or (getenv "PYTHONPATH")
+ ; "")))
+ (apply (assoc-ref %standard-phases 'sanity-check) args)))
(replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
+ (lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(setenv "PYTHONPATH"
(string-append "./build/lib:"
(or (getenv "PYTHONPATH")
- "")))))))))
+ "")))
+ (apply (assoc-ref %standard-phases 'check) args)))))))
(inputs (list mycroft-mimic pocketsphinx))
(propagated-inputs
- (list python-fasteners
+ (list python-adapt-parser
+ python-dateutil
+ python-fann2
+ python-fasteners
+ python-gtts
python-inflection
- python-pyxdg
+ python-lingua-franca
+ python-msk
+ python-msm
python-mycroft-messagebus-client
- python-psutil
- python-tornado-6
- python-petact
- python-precise-runner
python-padaos
- python-speech-recognition
python-padatious
- python-msk
+ python-petact
python-pillow
- python-gtts
- python-requests-futures
- python-pyserial
python-pocketsphinx
- python-adapt-parser
- python-lingua-franca
- python-pyyaml
- python-fasteners
+ python-psutil
+ python-pyaudio
python-pyee
- python-psutil
- python-fann2
python-pyxdg
- python-websocket-client
+ python-pyyaml
+ python-pyserial
+ python-precise-runner
python-requests
- python-requests-futures))
+ python-requests-futures
+ python-speech-recognition
+ python-tornado-6
+ python-websocket-client))
+ (native-inputs
+ (list python-pytest))
(home-page "https://github.com/HelloChatterbox/HolmesIV")
(synopsis "Mycroft Core, the Mycroft Artificial Intelligence platform")
(description "This module provides a hackable open source voice assistant - Mycroft")
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmHv1boACgkQQarn3Mo9
g1GvCRAAuXAf/pkBB7Z11VKrewBDfJkpm6yp+UUoyHtCHtwuBe3IhmBw4kyLDB2m
20NRBB/5UtkgpwLP0SZ7u7dzbf90wEQRZbqBYCe8Fq8fx0CCQM4G1aDp9GX16Ii6
UE+9RGBvqgi5uC0viokxIP6n4KTBs77e/kac942Vkwb7q2a1ryf7+gjvj2CU88gs
X99kg41Nr/9yF/Eh6jONOPoB8us+P64kuL4cuxFEkpnzKig0vjKxvG0GN0BTre/l
nlKQhnerZ56LSE0frlcOOYTwCD+OpBWIplCJRlEl8DYhbFuM7eCEVB3HM5xrRbu8
bzie+oDRZGnkdJ5UcU8fSEJSgWLgg9UPrlxrPRvUbCY+/bNGqNM5ho3Q3foa/l6W
I5KhTJpnpBcegE9Tt3V4Szriz3OvwbNXjtYL0b7PZAIt+iqygNsHS2hWOz75aGQ4
mhzHE6DPXYIQKtbTMa5TE76nC5P+ebQHF5Xc4Z7rrvXNZUBneWaekzQg9Vh0y/JH
pGcXCVhJA+5YA7g9nB+M/0IhT32s9vrhUUZIJtKKEbDm4k8bTFkdHNMX405N1Jzr
GpYNXveMZN2v1CHw/GLZGiaPM0xFgiqNbf3QpBHpKquXrIlN8yyMXtdkwuZHfZYo
Jy/eBzc0Rr/DTwPhBsDPOvsLOmEBhXwArjOUN/vtB8oSfm1DLfM=
=VlMw
-----END PGP SIGNATURE-----


P
P
phodina wrote on 26 Jan 2022 13:53
(name . Efraim Flashner)(address . efraim@flashner.co.il)
JPhhxQuVdnbXirJAA3WuVSURoutH_KgJ7hEsLoiglUMxdljsXjHIRElWaChVfXAIrFkI7Gaz29EBhqRcVEVbosHbBKsCe1qe6zeOuaW3_-w=@protonmail.com
Hi Efraim and Nicolas,

Toggle quote (43 lines)
> On Mon, Jan 24, 2022 at 11:45:13PM +0100, Nicolas Goaziou wrote:
>
> > Hello,
> >
> > phodina via Guix-patches via guix-patches@gnu.org writes:
> >
> > > The aim of this patch set is to bring in the MyCroft - private and
> > >
> > > open Voice Assistant.
> >
> > Thank you.
> >
> > I fixed some descriptions, removed labels from inputs, fixed compilation
> >
> > with GCC 10 (for Mimic). Then I tried to apply the patch set. Alas
> >
> > Mycroft core fails to build. You may want to have a look at it.
> >
> > I'm sending back the updated patches to you, if that helps.
> >
> > Regards,
> > --------
> >
> > Nicolas Goaziou
>
> I made some changes to python-mycroft-core but I couldn't get it to pass
>
> the sanity-check or the test suite. I've attached my changes. Also make
>
> sure you sort the inputs alphabetically, I found at least a duplicate
>
> python-pyxdg. Also some of the patches include a line or two of
>
> unrelated indentation changes in other packages.
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Efraim Flashner efraim@flashner.co.il ????? ?????
>
> GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
>
> Confidentiality cannot be guaranteed on emails sent or received unencrypted

Thanks for the review and updated patches. I'll check the reason why it won't build and failing tests.

----
Petr
P
P
phodina wrote on 15 Feb 2022 15:37
[PATCH v3 1/2] gnu: Add python-xdg.
(name . 50663@debbugs.gnu.org)(address . 50663@debbugs.gnu.org)
buIpKGDFKHj2syAWDtX3ittSW7KKIKhFmkhKpJ8U8GhWEjoWaqY0tvW7qq-IhbINsxXSjH8DpNPF2S37xjw4dlDgZ2lu_h8SkhfzuO4r120=@protonmail.com
Hi,

here are updated patches based on the review. Also I manged to fix the issues in the sanity-check phase.

However, there are still some points to be solved
https://github.com/MycroftAI/mycroft-core/issues/3074as the ALSA lib error blocks the tests. I also don't know how to mock the audio subsystem in tests properly.

FIY I renamed the package from python-mycroft-core to mycroft-core and move it to gnu/packages/speech.scm as this IMHO reflect more the purpose of this package.

Python module xdg was added as it's referenced in the code.

----
Petr
Attachment: file
From c5a8653641595e549369a9ff008194a4a749f98e Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Tue, 15 Feb 2022 09:07:15 +0100
Subject: [PATCH v3 1/2] gnu: Add python-xdg.

* gnu/packages/python-xyz.scm (python-xdg): New variable.

Toggle diff (30 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index feab9c7b50..d95fc12465 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14511,6 +14511,23 @@ (define-public python-pyfiglet
in pure Python.")
(license license:expat)))
+(define-public python-xdg
+ (package
+ (name "python-xdg")
+ (version "5.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "xdg" version))
+ (sha256
+ (base32 "0v6hmhjqlc6km284lr14kc4h5rl6xva231q1lsr8hq7crhk9yqda"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/srstevenson/xdg")
+ (synopsis "Implementation of the XDG Base Directory Specification")
+ (description "This package provides implementation of the XDG Base Directory
+Specification.")
+ (license license:isc)))
+
(define-public python-xdo
(package
(name "python-xdo")
--
2.34.0
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 50663@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 50663
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch