[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: Merge branch 'staging' into core-updates
From: |
guix-commits |
Subject: |
01/01: Merge branch 'staging' into core-updates |
Date: |
Sat, 23 Mar 2019 18:21:18 -0400 (EDT) |
mbakke pushed a commit to branch core-updates
in repository guix.
commit 8c14f7f8a7ab0722bf4c9f92fd28ae85514d564f
Merge: 2f33a73 3374e92
Author: Marius Bakke <address@hidden>
Date: Sat Mar 23 23:16:55 2019 +0100
Merge branch 'staging' into core-updates
.mailmap | 28 +-
Makefile.am | 6 +-
doc/guix.de.texi | 2 +-
doc/guix.fr.texi | 2 +-
doc/guix.texi | 664 +++++++++++++++-
etc/completion/fish/guix.fish | 2 +-
gnu/bootloader/extlinux.scm | 8 +-
gnu/bootloader/grub.scm | 16 +-
gnu/build/bootloader.scm | 63 +-
gnu/local.mk | 19 +-
gnu/packages/accessibility.scm | 2 +-
gnu/packages/admin.scm | 10 +-
gnu/packages/algebra.scm | 38 +-
gnu/packages/animation.scm | 6 +-
gnu/packages/arcan.scm | 105 +++
gnu/packages/audio.scm | 19 +-
gnu/packages/autotools.scm | 2 +-
gnu/packages/aux-files/run-in-namespace.c | 47 +-
gnu/packages/backup.scm | 4 +-
gnu/packages/benchmark.scm | 4 +-
gnu/packages/bioconductor.scm | 42 +-
gnu/packages/bioinformatics.scm | 459 ++++++++++-
gnu/packages/build-tools.scm | 4 +-
gnu/packages/cdrom.scm | 2 +-
gnu/packages/certs.scm | 4 +-
gnu/packages/check.scm | 44 +-
gnu/packages/cinnamon.scm | 2 +-
gnu/packages/compression.scm | 20 +-
gnu/packages/coq.scm | 9 +-
gnu/packages/cran.scm | 316 +++++---
gnu/packages/crypto.scm | 6 +-
gnu/packages/cups.scm | 48 +-
gnu/packages/curl.scm | 26 +-
gnu/packages/databases.scm | 32 +-
gnu/packages/debug.scm | 29 +-
gnu/packages/django.scm | 11 +-
gnu/packages/dns.scm | 18 +-
gnu/packages/docker.scm | 18 +-
gnu/packages/easyrpg.scm | 9 +-
gnu/packages/education.scm | 68 +-
gnu/packages/electronics.scm | 6 +-
gnu/packages/elixir.scm | 9 +-
gnu/packages/emacs-xyz.scm | 816 +++++++++++++------
gnu/packages/emacs.scm | 2 +-
gnu/packages/engineering.scm | 36 +-
gnu/packages/enlightenment.scm | 2 +-
gnu/packages/erlang.scm | 2 +-
gnu/packages/fonts.scm | 42 +-
gnu/packages/fontutils.scm | 59 +-
gnu/packages/forth.scm | 2 +-
gnu/packages/freedesktop.scm | 10 +-
gnu/packages/fvwm.scm | 2 +-
gnu/packages/game-development.scm | 20 +-
gnu/packages/games.scm | 199 ++++-
gnu/packages/gd.scm | 12 +-
gnu/packages/genimage.scm | 4 +-
gnu/packages/geo.scm | 29 +-
gnu/packages/gl.scm | 54 +-
gnu/packages/glib.scm | 6 +-
gnu/packages/gnome.scm | 164 +++-
gnu/packages/gnunet.scm | 8 +-
gnu/packages/gnupg.scm | 6 +-
gnu/packages/gnuzilla.scm | 24 +-
gnu/packages/gobby.scm | 8 +-
gnu/packages/golang.scm | 884 ++++++++++-----------
gnu/packages/gpodder.scm | 79 ++
gnu/packages/graphics.scm | 93 ++-
gnu/packages/gstreamer.scm | 1 +
gnu/packages/gtk.scm | 49 +-
gnu/packages/guile-wm.scm | 71 +-
gnu/packages/guile-xyz.scm | 2 +-
gnu/packages/haskell-check.scm | 2 +-
gnu/packages/haskell-crypto.scm | 21 +-
gnu/packages/haskell.scm | 7 +-
gnu/packages/hyperledger.scm | 8 +-
gnu/packages/image-processing.scm | 66 +-
gnu/packages/image-viewers.scm | 15 +-
gnu/packages/image.scm | 2 +-
gnu/packages/imagemagick.scm | 32 +-
gnu/packages/ipfs.scm | 21 +-
gnu/packages/irc.scm | 2 +-
gnu/packages/language.scm | 6 +-
gnu/packages/libcanberra.scm | 2 +-
gnu/packages/libevent.scm | 4 +-
gnu/packages/libreoffice.scm | 34 +-
gnu/packages/libusb.scm | 20 +-
gnu/packages/license.scm | 4 +-
gnu/packages/linux.scm | 103 ++-
gnu/packages/lisp.scm | 2 +-
gnu/packages/llvm.scm | 2 +-
gnu/packages/lolcode.scm | 2 +-
gnu/packages/lua.scm | 8 +-
gnu/packages/lxde.scm | 21 +-
gnu/packages/lxqt.scm | 313 +++++---
gnu/packages/machine-learning.scm | 224 +++++-
gnu/packages/mail.scm | 151 ++--
gnu/packages/markup.scm | 2 +-
gnu/packages/mate.scm | 2 +-
gnu/packages/maths.scm | 27 +-
gnu/packages/mc.scm | 2 +-
gnu/packages/messaging.scm | 32 +-
gnu/packages/mpd.scm | 4 +-
gnu/packages/mpi.scm | 46 ++
gnu/packages/multiprecision.scm | 19 +
gnu/packages/music.scm | 67 +-
gnu/packages/ncurses.scm | 2 +-
gnu/packages/networking.scm | 108 +--
gnu/packages/nickle.scm | 2 +-
gnu/packages/ntp.scm | 7 +-
gnu/packages/ocaml.scm | 16 +-
gnu/packages/openbox.scm | 2 +-
gnu/packages/openldap.scm | 40 +-
gnu/packages/parallel.scm | 5 +-
gnu/packages/password-utils.scm | 22 +-
.../patches/at-spi2-core-meson-compat.patch | 18 +
.../patches/blender-2.79-newer-ffmpeg.patch | 80 ++
.../patches/blender-2.79-python-3.7-fix.patch | 43 +
gnu/packages/patches/cracklib-CVE-2016-6318.patch | 95 ---
.../patches/cracklib-fix-buffer-overflow.patch | 39 -
gnu/packages/patches/dropbear-CVE-2018-15599.patch | 240 ------
gnu/packages/patches/elixir-path-length.patch | 15 +
.../patches/knot-include-system-lmdb-header.patch | 34 +
.../patches/libextractor-CVE-2018-20430.patch | 60 --
.../patches/libextractor-CVE-2018-20431.patch | 53 --
gnu/packages/patches/libgit2-avoid-python.patch | 322 ++++++++
gnu/packages/patches/libgit2-oom-test.patch | 62 --
gnu/packages/patches/python-flint-includes.patch | 131 +++
gnu/packages/patches/totem-meson-compat.patch | 14 +
gnu/packages/pdf.scm | 2 +-
gnu/packages/perl-check.scm | 69 +-
gnu/packages/perl-web.scm | 4 +-
gnu/packages/perl.scm | 488 ++++++------
gnu/packages/perl6.scm | 787 ++++++++++++++++++
gnu/packages/photo.scm | 23 +-
gnu/packages/pretty-print.scm | 12 +-
gnu/packages/protobuf.scm | 25 +
gnu/packages/python-check.scm | 48 ++
gnu/packages/python-compression.scm | 2 +-
gnu/packages/python-crypto.scm | 2 +-
gnu/packages/python-web.scm | 65 +-
gnu/packages/python-xyz.scm | 208 ++++-
gnu/packages/python.scm | 2 +-
gnu/packages/qt.scm | 6 +-
gnu/packages/rails.scm | 206 ++++-
gnu/packages/ruby.scm | 197 ++++-
gnu/packages/rust.scm | 10 +-
gnu/packages/samba.scm | 19 +-
gnu/packages/scanner.scm | 12 +-
gnu/packages/scheme.scm | 2 +-
gnu/packages/sdl.scm | 7 +-
gnu/packages/serialization.scm | 2 +-
gnu/packages/shells.scm | 2 +-
gnu/packages/shellutils.scm | 6 +-
gnu/packages/ssh.scm | 31 +-
gnu/packages/statistics.scm | 84 +-
gnu/packages/storage.scm | 15 +-
gnu/packages/suckless.scm | 17 +-
gnu/packages/syncthing.scm | 655 ++++++++-------
gnu/packages/syndication.scm | 51 +-
gnu/packages/tbb.scm | 17 +-
gnu/packages/telephony.scm | 2 +-
gnu/packages/terminals.scm | 1 -
gnu/packages/terraform.scm | 6 +-
gnu/packages/text-editors.scm | 66 +-
gnu/packages/textutils.scm | 24 +-
gnu/packages/time.scm | 2 +-
gnu/packages/tls.scm | 7 +-
gnu/packages/tor.scm | 2 +-
gnu/packages/uml.scm | 4 +-
gnu/packages/version-control.scm | 17 +-
gnu/packages/video.scm | 139 +++-
gnu/packages/vim.scm | 56 +-
gnu/packages/virtualization.scm | 1 +
gnu/packages/vpn.scm | 35 +-
gnu/packages/vulkan.scm | 21 +-
gnu/packages/web.scm | 160 ++--
gnu/packages/wine.scm | 6 +-
gnu/packages/wm.scm | 36 +-
gnu/packages/xdisorg.scm | 36 +-
gnu/packages/xfce.scm | 154 ++--
gnu/packages/xml.scm | 26 +-
gnu/packages/xorg.scm | 84 +-
gnu/services/audio.scm | 9 +
gnu/services/authentication.scm | 511 +++++++++++-
gnu/services/certbot.scm | 2 +-
gnu/services/desktop.scm | 48 +-
gnu/services/version-control.scm | 2 +-
gnu/services/web.scm | 2 +-
gnu/system.scm | 4 +-
gnu/system/vm.scm | 10 +-
gnu/tests/ldap.scm | 160 ++++
guix/build-system/glib-or-gtk.scm | 9 +-
guix/build-system/go.scm | 2 +
guix/build-system/meson.scm | 30 +-
guix/build-system/rakudo.scm | 155 ++++
guix/build/go-build-system.scm | 139 ++--
guix/build/rakudo-build-system.scm | 145 ++++
guix/describe.scm | 25 +-
guix/download.scm | 6 +-
guix/import/hackage.scm | 2 +-
guix/import/launchpad.scm | 124 +++
guix/import/opam.scm | 2 +-
guix/licenses.scm | 2 +-
guix/packages.scm | 38 +
guix/scripts.scm | 50 +-
guix/scripts/build.scm | 146 ++--
guix/scripts/describe.scm | 6 +-
guix/scripts/graph.scm | 31 +-
guix/scripts/pack.scm | 76 +-
guix/scripts/package.scm | 9 +-
guix/scripts/system.scm | 13 +-
guix/tests.scm | 15 +
po/guix/POTFILES.in | 2 +
tests/build-utils.scm | 52 +-
tests/graph.scm | 28 +-
tests/guix-pack-relocatable.sh | 21 +-
tests/packages.scm | 51 ++
tests/scripts-build.scm | 109 ++-
tests/scripts.scm | 15 +-
219 files changed, 9838 insertions(+), 3772 deletions(-)
diff --cc gnu/local.mk
index ea5ac20,ec82877..e936343
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@@ -650,7 -655,7 +653,8 @@@ dist_patch_DATA =
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aria2-CVE-2019-3500.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
+ %D%/packages/patches/aspell-gcc-compat.patch \
+ %D%/packages/patches/at-spi2-core-meson-compat.patch \
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \
%D%/packages/patches/ath9k-htc-firmware-objcopy.patch \
@@@ -668,9 -673,10 +672,11 @@@
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
%D%/packages/patches/beets-python-3.7-fix.patch \
%D%/packages/patches/beignet-correct-file-names.patch \
+ %D%/packages/patches/binutils-boot-2.20.1a.patch \
%D%/packages/patches/biber-fix-encoding-write.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \
+ %D%/packages/patches/blender-2.79-newer-ffmpeg.patch \
+ %D%/packages/patches/blender-2.79-python-3.7-fix.patch \
%D%/packages/patches/boost-fix-icu-build.patch \
%D%/packages/patches/byobu-writable-status.patch \
%D%/packages/patches/calibre-no-updates-dialog.patch \
@@@ -968,10 -970,9 +973,8 @@@
%D%/packages/patches/libevent-2.1-skip-failing-test.patch \
%D%/packages/patches/libexif-CVE-2016-6328.patch \
%D%/packages/patches/libexif-CVE-2017-7544.patch \
- %D%/packages/patches/libextractor-CVE-2018-20430.patch \
- %D%/packages/patches/libextractor-CVE-2018-20431.patch \
- %D%/packages/patches/libgcrypt-make-yat2m-reproducible.patch \
+ %D%/packages/patches/libgit2-avoid-python.patch \
%D%/packages/patches/libgit2-mtime-0.patch \
- %D%/packages/patches/libgit2-oom-test.patch \
%D%/packages/patches/libgdata-fix-tests.patch \
%D%/packages/patches/libgdata-glib-duplicate-tests.patch \
%D%/packages/patches/libgnome-encoding.patch \
diff --cc gnu/packages/games.scm
index 1cd3faa,e750d06..eac0ae3
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@@ -2611,27 -2609,33 +2609,29 @@@ Transport Tycoon Deluxe."
(arguments
`(#:configure-flags (list "-DDOWNLOAD_OBJECTS=OFF"
"-DDOWNLOAD_TITLE_SEQUENCES=OFF")
- #:tests? #f ; Tests require network.
+ #:tests? #f ; tests require network access
#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-usr-share-paths&add-data
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((titles (assoc-ref inputs "openrct2-title-sequences"))
- (objects (assoc-ref inputs "openrct2-objects")))
- ;; Fix some references to /usr/share.
- (substitute* "src/openrct2/platform/Platform.Linux.cpp"
- (("/usr/share")
- (string-append (assoc-ref %outputs "out") "/share")))
- (copy-recursively (string-append titles
- "/share/openrct2/title-sequences")
"data/title")
- (copy-recursively (string-append objects
- "/share/openrct2/objects") "data/object"))))
- (add-before 'configure 'get-rid-of-errors
- (lambda _
- ;; Don't treat warnings as errors.
- (substitute* "CMakeLists.txt"
- (("-Werror") ""))
- #t)))))
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-usr-share-paths&add-data
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((titles (assoc-ref inputs "openrct2-title-sequences"))
+ (objects (assoc-ref inputs "openrct2-objects")))
+ ;; Fix some references to /usr/share.
+ (substitute* "src/openrct2/platform/Platform.Linux.cpp"
+ (("/usr/share")
+ (string-append (assoc-ref %outputs "out") "/share")))
+ (copy-recursively
+ (string-append titles "/share/openrct2/title-sequences")
+ "data/title")
+ (copy-recursively
+ (string-append objects "/share/openrct2/objects")
+ "data/object"))))
- (add-before 'configure 'fixgcc7
- (lambda _
- (unsetenv "C_INCLUDE_PATH")
- (unsetenv "CPLUS_INCLUDE_PATH")
- #t))
- (add-after 'fixgcc7 'get-rid-of-errors
++ (add-before 'configure 'get-rid-of-errors
+ (lambda _
+ ;; Don't treat warnings as errors.
+ (substitute* "CMakeLists.txt"
- (("-Werror") "")))))))
++ (("-Werror") ""))
++ #t)))))
(inputs `(("curl" ,curl)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
diff --cc gnu/packages/glib.scm
index f3cae2f,98b227c..3689c31
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@@ -7,9 -7,8 +7,9 @@@
;;; Copyright © 2016 Lukas Gradl <address@hidden>
;;; Copyright © 2017, 2018 Ricardo Wurmus <address@hidden>
;;; Copyright © 2017 Petter <address@hidden>
- ;;; Copyright © 2018 Tobias Geerinckx-Rice <address@hidden>
+ ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <address@hidden>
;;; Copyright © 2018 Alex Vong <address@hidden>
+;;; Copyright © 2019 Maxim Cournoyer <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
diff --cc gnu/packages/machine-learning.scm
index 4067b4b,28bb44a..20b8bfa
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@@ -1027,3 -1047,205 +1047,205 @@@ association studies (GWAS) on extremel
(description "Kaldi is an extensible toolkit for speech recognition
written in C++.")
(license license:asl2.0))))
+
+ (define-public gst-kaldi-nnet2-online
+ (let ((commit "617e43e73c7cc45eb9119028c02bd4178f738c4a")
+ (revision "1"))
+ (package
+ (name "gst-kaldi-nnet2-online")
+ (version (git-version "0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
"https://github.com/alumae/gst-kaldi-nnet2-online.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xh3w67b69818s6ib02ara4lw7wamjdmh4jznvkpzrs4skbs9jx9"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; there are none
+ #:make-flags
+ (list (string-append "SHELL="
+ (assoc-ref %build-inputs "bash") "/bin/bash")
+ (string-append "KALDI_ROOT="
+ (assoc-ref %build-inputs "kaldi-src"))
+ (string-append "KALDILIBDIR="
+ (assoc-ref %build-inputs "kaldi") "/lib")
+ "KALDI_FLAVOR=dynamic")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "src") #t))
+ (replace 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((glib (assoc-ref inputs "glib")))
+ (setenv "CXXFLAGS" "-std=c++11 -fPIC")
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-append glib "/include/glib-2.0:"
+ glib "/lib/glib-2.0/include:"
+ (assoc-ref inputs "gstreamer")
+ "/include/gstreamer-1.0:"
+ (getenv "CPLUS_INCLUDE_PATH"))))
+ (substitute* "Makefile"
+ (("include \\$\\(KALDI_ROOT\\)/src/kaldi.mk") "")
+ (("\\$\\(error Cannot find") "#"))))
+ (add-before 'build 'build-depend
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke "make" "depend" make-flags)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lib (string-append out "/lib/gstreamer-1.0")))
+ (install-file "libgstkaldinnet2onlinedecoder.so" lib)
+ #t))))))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("jansson" ,jansson)
+ ("openfst" ,openfst)
+ ("kaldi" ,kaldi)))
+ (native-inputs
+ `(("bash" ,bash)
+ ("glib:bin" ,glib "bin") ; glib-genmarshal
+ ("kaldi-src" ,(package-source kaldi))
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://kaldi-asr.org/")
+ (synopsis "Gstreamer plugin for decoding speech")
+ (description "This package provides a GStreamer plugin that wraps
+ Kaldi's @code{SingleUtteranceNnet2Decoder}. It requires iVector-adapted DNN
+ acoustic models. The iVectors are adapted to the current audio stream
+ automatically.")
+ (license license:asl2.0))))
+
+ (define-public kaldi-gstreamer-server
+ (let ((commit "1735ba49c5dc0ebfc184e45105fc600cd9f1f508")
+ (revision "1"))
+ (package
+ (name "kaldi-gstreamer-server")
+ (version (git-version "0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
"https://github.com/alumae/kaldi-gstreamer-server.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0j701m7lbwmzqxsfanj882v7881hrbmpqybbczbxqpcbg8q34w0k"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; there are no tests that can be run automatically
+ #:modules ((guix build utils)
+ (guix build gnu-build-system)
+ (srfi srfi-26))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'build
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Disable hash randomization to ensure the generated .pycs
+ ;; are reproducible.
+ (setenv "PYTHONHASHSEED" "0")
+ (with-directory-excursion "kaldigstserver"
+ (for-each (lambda (file)
+ (apply invoke
+ `("python"
+ "-m" "compileall"
+ "-f" ; force rebuild
+ ,file)))
+ (find-files "." "\\.py$")))
+ #t))
+ (replace 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (share (string-append out
"/share/kaldi-gstreamer-server/")))
+ ;; Install Python files
+ (with-directory-excursion "kaldigstserver"
+ (for-each (cut install-file <> share)
+ (find-files "." ".*")))
+
+ ;; Install sample configuration files
+ (for-each (cut install-file <> share)
+ (find-files "." "\\.yaml"))
+
+ ;; Install executables
+ (mkdir-p bin)
+ (let* ((server (string-append bin "/kaldi-gst-server"))
+ (client (string-append bin "/kaldi-gst-client"))
+ (worker (string-append bin "/kaldi-gst-worker"))
+ (PYTHONPATH (getenv "PYTHONPATH"))
+ (GST_PLUGIN_PATH (string-append
+ (assoc-ref inputs
"gst-kaldi-nnet2-online")
+
"/lib/gstreamer-1.0:${GST_PLUGIN_PATH}"))
+ (wrap (lambda (wrapper what)
+ (with-output-to-file wrapper
+ (lambda _
+ (format #t
+ "#!~a
+ export PYTHONPATH=~a
+ export GST_PLUGIN_PATH=~a
+ exec ~a ~a/~a \"address@hidden"~%"
+ (which "bash") PYTHONPATH
GST_PLUGIN_PATH
+ (which "python") share what)))
+ (chmod wrapper #o555))))
+ (for-each wrap
+ (list server client worker)
+ (list "master_server.py"
+ "client.py"
+ "worker.py")))
+ #t))))))
+ (inputs
+ `(("gst-kaldi-nnet2-online" ,gst-kaldi-nnet2-online)
+ ("python2" ,python-2)
+ ("python2-futures" ,python2-futures)
+ ("python2-pygobject" ,python2-pygobject)
+ ("python2-pyyaml" ,python2-pyyaml)
+ ("python2-tornado" ,python2-tornado)
+ ("python2-ws4py" ,python2-ws4py-for-kaldi-gstreamer-server)))
+ (home-page "https://github.com/alumae/kaldi-gstreamer-server")
+ (synopsis "Real-time full-duplex speech recognition server")
+ (description "This is a real-time full-duplex speech recognition server,
+ based on the Kaldi toolkit and the GStreamer framework and implemented in
+ Python.")
+ (license license:bsd-2))))
+
+ (define-public grpc
+ (package
+ (name "grpc")
+ (version "1.16.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/grpc/grpc.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1jimqz3115f9pli5w6ik9wi7mjc7ix6y7yrq4a1ab9fc3dalj7p2"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ; no test target
+ #:configure-flags
+ (list "-DgRPC_ZLIB_PROVIDER=package"
+ "-DgRPC_CARES_PROVIDER=package"
+ "-DgRPC_SSL_PROVIDER=package"
+ "-DgRPC_PROTOBUF_PROVIDER=package")))
+ (inputs
- `(("c-ares" ,c-ares-next)
++ `(("c-ares" ,c-ares)
+ ("openssl" ,openssl)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("protobuf" ,protobuf-next)
+ ("python" ,python-wrapper)))
+ (home-page "https://grpc.io")
+ (synopsis "High performance universal RPC framework")
+ (description "gRPC is a modern open source high performance @dfn{Remote
+ Procedure Call} (RPC) framework that can run in any environment. It can
+ efficiently connect services in and across data centers with pluggable support
+ for load balancing, tracing, health checking and authentication. It is also
+ applicable in last mile of distributed computing to connect devices, mobile
+ applications and browsers to backend services.")
+ (license license:asl2.0)))
diff --cc gnu/packages/mpd.scm
index 3b21378,4114802..5a9c438
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@@ -100,10 -100,20 +100,10 @@@ interfacing MPD in the C, C++ & Objecti
"/mpd-" version ".tar.xz"))
(sha256
(base32
- "1y8fbch4xp96i4mz6czivnwvaf7g8pnfix5d0pbybnkv7bmz1a9f"))))
+ "17z580gqwsr4xp3x124aapw96pl8hk91c43ld2x75606rim12kcd"))))
(build-system meson-build-system)
(arguments
- `(#:configure-flags '("-Ddocumentation=true") ; The default is 'false'...
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'expand-C++-include-path
- ;; Make <gcc>/include/c++/ext/string_conversions.h find <stdlib.h>.
- (lambda* (#:key inputs #:allow-other-keys)
- (let* ((path "CPLUS_INCLUDE_PATH")
- (gcc (assoc-ref inputs "gcc"))
- (c++ (string-append gcc "/include/c++")))
- (setenv path (string-append c++ ":" (getenv path)))
- #t))))))
+ `(#:configure-flags '("-Ddocumentation=true"))) ;the default is
'false'...
(inputs `(("ao" ,ao)
("alsa-lib" ,alsa-lib)
("avahi" ,avahi)
diff --cc gnu/packages/python-xyz.scm
index a995618,1968c98..db31794
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@@ -23,10 -23,10 +23,10 @@@
;;; Copyright © 2016 Daniel Pimentel <address@hidden>
;;; Copyright © 2016 Sou Bunnbu <address@hidden>
;;; Copyright © 2016, 2017 Troy Sankey <address@hidden>
- ;;; Copyright © 2016, 2017 Nils Gillmann <address@hidden>
+ ;;; Copyright © 2016, 2017 ng0 <address@hidden>
;;; Copyright © 2016 Dylan Jeffers <address@hidden@openmailbox.org>
;;; Copyright © 2016 David Craven <address@hidden>
-;;; Copyright © 2016, 2017, 2018 Marius Bakke <address@hidden>
+;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <address@hidden>
;;; Copyright © 2016, 2017 Stefan Reichör <address@hidden>
;;; Copyright © 2016 Dylan Jeffers <address@hidden@openmailbox.org>
;;; Copyright © 2016, 2017 Alex Vong <address@hidden>
diff --cc gnu/packages/tls.scm
index 1882303,9e3020b..263ca9b
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@@ -6,10 -6,10 +6,10 @@@
;;; Copyright © 2015 David Thompson <address@hidden>
;;; Copyright © 2015, 2016, 2017, 2018 Leo Famulari <address@hidden>
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <address@hidden>
- ;;; Copyright © 2016, 2017, 2018 Nils Gillmann <address@hidden>
+ ;;; Copyright © 2016, 2017, 2018 ng0 <address@hidden>
;;; Copyright © 2016 Hartmut Goebel <address@hidden>
;;; Copyright © 2017 Ricardo Wurmus <address@hidden>
-;;; Copyright © 2017, 2018 Marius Bakke <address@hidden>
+;;; Copyright © 2017, 2018, 2019 Marius Bakke <address@hidden>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <address@hidden>
;;; Copyright © 2017 Rutger Helling <address@hidden>
;;; Copyright © 2018 Clément Lassieur <address@hidden>
diff --cc tests/build-utils.scm
index 1c90845,46fe8ea..5678bb6
--- a/tests/build-utils.scm
+++ b/tests/build-utils.scm
@@@ -1,6 -1,5 +1,6 @@@
;;; GNU Guix --- Functional package management for GNU
- ;;; Copyright © 2012, 2015, 2016 Ludovic Courtès <address@hidden>
+ ;;; Copyright © 2012, 2015, 2016, 2019 Ludovic Courtès <address@hidden>
+;;; Copyright © 2019 Ricardo Wurmus <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@@ -108,120 -110,38 +111,139 @@@
;; it can't know about the bootstrap bash in the store, since it's not
;; named "bash". Help it out a bit by providing a symlink it this
;; package's output.
- (setenv "PATH" (dirname bash))
- (wrap-program foo `("GUIX_FOO" prefix ("hello")))
- (wrap-program foo `("GUIX_BAR" prefix ("world")))
-
- ;; The bootstrap Bash is linked against an old libc and would abort
with
- ;; an assertion failure when trying to load incompatible locale data.
- (unsetenv "LOCPATH")
-
- (let* ((pipe (open-input-pipe foo))
- (str (get-string-all pipe)))
- (with-directory-excursion directory
- (for-each delete-file '("foo" ".foo-real")))
- (and (zero? (close-pipe pipe))
- str))))))
+ (with-environment-variable "PATH" (dirname bash)
+ (wrap-program foo `("GUIX_FOO" prefix ("hello")))
+ (wrap-program foo `("GUIX_BAR" prefix ("world")))
+
+ ;; The bootstrap Bash is linked against an old libc and would abort
+ ;; with an assertion failure when trying to load incompatible locale
+ ;; data.
+ (unsetenv "LOCPATH")
+
+ (let* ((pipe (open-input-pipe foo))
+ (str (get-string-all pipe)))
+ (with-directory-excursion directory
+ (for-each delete-file '("foo" ".foo-real")))
+ (and (zero? (close-pipe pipe))
+ str)))))))
+
+ (test-assert "invoke/quiet, success"
+ (begin
+ (invoke/quiet "true")
+ #t))
+
+ (test-assert "invoke/quiet, failure"
+ (guard (c ((message-condition? c)
+ (string-contains (condition-message c) "This is an error.")))
+ (invoke/quiet "sh" "-c" "echo This is an error. ; false")
+ #f))
+
+ (test-assert "invoke/quiet, failure, message on stderr"
+ (guard (c ((message-condition? c)
+ (string-contains (condition-message c)
+ "This is another error.")))
+ (invoke/quiet "sh" "-c" "echo This is another error. >&2 ; false")
+ #f))
+(let ((script-contents "\
+#!/anything/cabbage-bash-1.2.3/bin/sh
+
+echo hello world"))
+
+ (test-equal "wrap-script, simple case"
+ (string-append
+ (format #f "\
+#!GUILE --no-auto-compile
+#!#; Guix wrapper
+#\\-~s
+#\\-~s
+"
+ '(begin (let ((current (getenv "GUIX_FOO")))
+ (setenv "GUIX_FOO"
+ (if current
+ (string-append
"/some/path:/some/other/path"
+ ":" current)
+ "/some/path:/some/other/path"))))
+ '(let ((cl (command-line)))
+ (apply execl "/anything/cabbage-bash-1.2.3/bin/sh"
+ (car cl)
+ (cons (car cl)
+ (append '("") cl)))))
+ script-contents)
+ (call-with-temporary-directory
+ (lambda (directory)
+ (let ((script-file-name (string-append directory "/foo")))
+ (call-with-output-file script-file-name
+ (lambda (port)
+ (format port script-contents)))
+ (chmod script-file-name #o777)
+
+ (mock ((guix build utils) which (const "GUILE"))
+ (wrap-script script-file-name
+ `("GUIX_FOO" prefix ("/some/path"
+ "/some/other/path"))))
+ (let ((str (call-with-input-file script-file-name get-string-all)))
+ (with-directory-excursion directory
+ (delete-file "foo"))
+ str))))))
+
+(let ((script-contents "\
+#!/anything/cabbage-bash-1.2.3/bin/python3 -and -args
+# vim:fileencoding=utf-8
+print('hello world')"))
+
+ (test-equal "wrap-script, with encoding declaration"
+ (string-append
+ (format #f "\
+#!MYGUILE --no-auto-compile
+#!#; # vim:fileencoding=utf-8
+#\\-~s
+#\\-~s
+"
+ '(begin (let ((current (getenv "GUIX_FOO")))
+ (setenv "GUIX_FOO"
+ (if current
+ (string-append
"/some/path:/some/other/path"
+ ":" current)
+ "/some/path:/some/other/path"))))
+ `(let ((cl (command-line)))
+ (apply execl "/anything/cabbage-bash-1.2.3/bin/python3"
+ (car cl)
+ (cons (car cl)
+ (append '("" "-and" "-args") cl)))))
+ script-contents)
+ (call-with-temporary-directory
+ (lambda (directory)
+ (let ((script-file-name (string-append directory "/foo")))
+ (call-with-output-file script-file-name
+ (lambda (port)
+ (format port script-contents)))
+ (chmod script-file-name #o777)
+
+ (wrap-script script-file-name
+ #:guile "MYGUILE"
+ `("GUIX_FOO" prefix ("/some/path"
+ "/some/other/path")))
+ (let ((str (call-with-input-file script-file-name get-string-all)))
+ (with-directory-excursion directory
+ (delete-file "foo"))
+ str))))))
+
+(test-assert "wrap-script, raises condition"
+ (call-with-temporary-directory
+ (lambda (directory)
+ (let ((script-file-name (string-append directory "/foo")))
+ (call-with-output-file script-file-name
+ (lambda (port)
+ (format port "This is not a script")))
+ (chmod script-file-name #o777)
+ (catch 'srfi-34
+ (lambda ()
+ (wrap-script script-file-name
+ #:guile "MYGUILE"
+ `("GUIX_FOO" prefix ("/some/path"
+ "/some/other/path"))))
+ (lambda (type obj)
+ (wrap-error? obj)))))))
+
(test-end)