guix-commits
[Top][All Lists]
Advanced

[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)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]