guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: Merge branch 'master' into core-updates


From: guix-commits
Subject: 01/02: Merge branch 'master' into core-updates
Date: Thu, 11 Jul 2019 19:13:00 -0400 (EDT)

mbakke pushed a commit to branch core-updates
in repository guix.

commit fb9a23a3f3ad3d7b5b7f03b2007baf27684d6bbd
Merge: 1c4b72c 5a836ce
Author: Marius Bakke <address@hidden>
Date:   Fri Jul 12 01:03:53 2019 +0200

    Merge branch 'master' into core-updates
    
     Conflicts:
        gnu/local.mk
        gnu/packages/python-xyz.scm
        gnu/packages/xml.scm
        guix/gexp.scm
        po/guix/POTFILES.in

 Makefile.am                                        |   5 +-
 doc/build.scm                                      | 563 +++++++++++++++++++++
 doc/guix.texi                                      | 122 +++++
 etc/guix-install.sh                                |  19 +-
 gnu/build/linux-container.scm                      |   7 +-
 gnu/ci.scm                                         |   6 +-
 gnu/local.mk                                       |  21 +-
 gnu/machine.scm                                    | 107 ++++
 gnu/machine/ssh.scm                                | 369 ++++++++++++++
 gnu/packages/admin.scm                             |  42 +-
 gnu/packages/algebra.scm                           |  16 +-
 gnu/packages/bioconductor.scm                      |   6 +-
 gnu/packages/bioinformatics.scm                    |  33 +-
 gnu/packages/bootloaders.scm                       |  28 +-
 gnu/packages/chromium.scm                          |   6 +-
 gnu/packages/databases.scm                         |  27 +-
 gnu/packages/dictionaries.scm                      |   4 +-
 gnu/packages/disk.scm                              |   4 +-
 gnu/packages/education.scm                         |   4 +-
 gnu/packages/emacs-xyz.scm                         | 319 +++++++-----
 gnu/packages/game-development.scm                  |   4 +-
 gnu/packages/gnome.scm                             |  10 +-
 gnu/packages/gnunet.scm                            |   6 +-
 gnu/packages/gnupg.scm                             |  24 +-
 gnu/packages/gnuzilla.scm                          |   9 +-
 gnu/packages/gps.scm                               |   4 +-
 gnu/packages/guile-xyz.scm                         |   2 +-
 gnu/packages/image.scm                             |  30 +-
 gnu/packages/javascript.scm                        |  22 +-
 gnu/packages/linux.scm                             |  24 +-
 gnu/packages/lisp.scm                              | 557 ++++++++++++++++++--
 gnu/packages/llvm.scm                              |   6 +-
 gnu/packages/logo.scm                              |  71 +++
 gnu/packages/mail.scm                              |  12 +-
 gnu/packages/music.scm                             |   4 +-
 gnu/packages/networking.scm                        |   7 +-
 gnu/packages/package-management.scm                |   6 +-
 gnu/packages/patches/a2ps-CVE-2015-8107.patch      |  80 +++
 gnu/packages/patches/clx-remove-demo.patch         |  27 -
 gnu/packages/patches/csvkit-fix-tests.patch        |  45 ++
 ...s-2017-12836.patch => cvs-CVE-2017-12836.patch} |   0
 gnu/packages/patches/expat-CVE-2018-20843.patch    |  21 +
 gnu/packages/patches/grub-binutils-compat.patch    |  53 --
 .../patches/grub-check-error-efibootmgr.patch      | 197 -------
 .../patches/grub-efi-fat-serial-number.patch       |  17 +-
 gnu/packages/patches/libexif-CVE-2018-20030.patch  | 120 +++++
 gnu/packages/patches/plib-CVE-2011-4620.patch      |  13 +
 gnu/packages/patches/plib-CVE-2012-4552.patch      |  57 +++
 .../python-slugify-depend-on-unidecode.patch       |  22 +
 gnu/packages/patchutils.scm                        |   4 +-
 gnu/packages/pdf.scm                               |   8 +-
 gnu/packages/photo.scm                             |  13 +-
 gnu/packages/pretty-print.scm                      |   5 +-
 gnu/packages/pulseaudio.scm                        |  58 +++
 gnu/packages/python-web.scm                        |  31 ++
 gnu/packages/python-xyz.scm                        | 140 ++++-
 gnu/packages/serialization.scm                     |  14 +-
 gnu/packages/time.scm                              |  21 +
 gnu/packages/version-control.scm                   |   2 +-
 gnu/packages/vim.scm                               |  10 +-
 gnu/packages/web.scm                               |  59 ++-
 gnu/packages/wget.scm                              |  13 +-
 gnu/packages/wine.scm                              |   6 +-
 gnu/packages/wireservice.scm                       | 267 ++++++++++
 gnu/packages/wm.scm                                |   6 +-
 gnu/packages/xdisorg.scm                           |  11 +-
 gnu/packages/xml.scm                               |  32 +-
 gnu/tests/docker.scm                               |  18 +-
 gnu/tests/install.scm                              |   2 +-
 gnu/tests/singularity.scm                          |  18 +-
 guix/channels.scm                                  |  59 +--
 guix/derivations.scm                               | 115 +++--
 guix/discovery.scm                                 |   4 +-
 guix/docker.scm                                    |  17 +-
 guix/gexp.scm                                      | 233 ++++++---
 guix/inferior.scm                                  |   9 +-
 guix/remote.scm                                    | 134 +++++
 guix/repl.scm                                      |  86 ++++
 guix/scripts/deploy.scm                            |  84 +++
 guix/scripts/environment.scm                       |  67 ++-
 guix/scripts/gc.scm                                |  18 +-
 guix/scripts/pack.scm                              |  64 ++-
 guix/scripts/package.scm                           |  17 +-
 guix/scripts/pull.scm                              |   4 +-
 guix/scripts/repl.scm                              |  56 +-
 guix/scripts/system.scm                            |  10 +-
 guix/self.scm                                      |   3 +-
 guix/ssh.scm                                       |  10 +-
 guix/store.scm                                     |  11 +-
 guix/ui.scm                                        |  21 +-
 po/guix/POTFILES.in                                |   2 +
 release.nix                                        | 129 -----
 tests/derivations.scm                              |  29 ++
 tests/gexp.scm                                     |  37 ++
 tests/guix-environment.sh                          |   8 +
 95 files changed, 4030 insertions(+), 1093 deletions(-)

diff --cc gnu/local.mk
index c8fa44d,67d9eb7..b9575ad
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@@ -655,8 -660,11 +660,9 @@@ dist_patch_DATA =                                 
        
    %D%/packages/patches/4store-unset-preprocessor-directive.patch      \
    %D%/packages/patches/a2ps-CVE-2001-1593.patch       \
    %D%/packages/patches/a2ps-CVE-2014-0466.patch       \
+   %D%/packages/patches/a2ps-CVE-2015-8107.patch       \
    %D%/packages/patches/abiword-explictly-cast-bools.patch     \
    %D%/packages/patches/abiword-black-drawing-with-gtk322.patch        \
 -  %D%/packages/patches/acl-fix-perl-regex.patch               \
 -  %D%/packages/patches/acl-hurd-path-max.patch                        \
    %D%/packages/patches/adb-add-libraries.patch                        \
    %D%/packages/patches/aegis-constness-error.patch            \
    %D%/packages/patches/aegis-perl-tempdir1.patch              \
@@@ -739,8 -746,9 +745,8 @@@
    %D%/packages/patches/clucene-contribs-lib.patch               \
    %D%/packages/patches/cube-nocheck.patch                     \
    %D%/packages/patches/cursynth-wave-rand.patch                       \
-   %D%/packages/patches/cvs-2017-12836.patch                   \
+   %D%/packages/patches/cvs-CVE-2017-12836.patch               \
    %D%/packages/patches/dbus-helper-search-path.patch          \
 -  %D%/packages/patches/dbus-CVE-2019-12749.patch              \
    %D%/packages/patches/dealii-mpi-deprecations.patch          \
    %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch        \
    %D%/packages/patches/dfu-programmer-fix-libusb.patch                \
@@@ -892,9 -892,8 +899,7 @@@
    %D%/packages/patches/gpsbabel-minizip.patch                 \
    %D%/packages/patches/gpsbabel-qstring.patch                 \
    %D%/packages/patches/grep-timing-sensitive-test.patch               \
 -  %D%/packages/patches/groff-source-date-epoch.patch          \
    %D%/packages/patches/groovy-add-exceptionutilsgenerator.patch       \
-   %D%/packages/patches/grub-binutils-compat.patch             \
-   %D%/packages/patches/grub-check-error-efibootmgr.patch      \
    %D%/packages/patches/grub-efi-fat-serial-number.patch               \
    %D%/packages/patches/gsl-test-i686.patch                    \
    %D%/packages/patches/gspell-dash-test.patch                 \
@@@ -1003,11 -1004,16 +1008,12 @@@
    %D%/packages/patches/libdrm-symbol-check.patch              \
    %D%/packages/patches/libexif-CVE-2016-6328.patch            \
    %D%/packages/patches/libexif-CVE-2017-7544.patch            \
-   %D%/packages/patches/libgpg-error-gawk-compat.patch         \
+   %D%/packages/patches/libexif-CVE-2018-20030.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/libgdata-fix-tests.patch                       \
 -  %D%/packages/patches/libgdata-glib-duplicate-tests.patch    \
    %D%/packages/patches/libgnome-encoding.patch                        \
    %D%/packages/patches/libgnomeui-utf8.patch                  \
++  %D%/packages/patches/libgpg-error-gawk-compat.patch         \
    %D%/packages/patches/libffi-3.2.1-complex-alpha.patch               \
    %D%/packages/patches/libjxr-fix-function-signature.patch    \
    %D%/packages/patches/libjxr-fix-typos.patch                 \
diff --cc gnu/packages/xml.scm
index 8dce027,0cd9319..e708348
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@@ -65,14 -66,20 +66,19 @@@
  (define-public expat
    (package
      (name "expat")
 -    (replacement expat/fixed)
 -    (version "2.2.6")
 +    (version "2.2.7")
-     (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://sourceforge/expat/expat/"
-                                  version "/expat-" version ".tar.xz"))
-              (sha256
-               (base32
-                "1y5yax6bq8p9xk49zqkd62pxk8bq266wrgbrqgaxp3wsrw5g9qrh"))))
+     (source (let ((dot->underscore (lambda (c) (if (char=? #\. c) #\_ c))))
+               (origin
+                 (method url-fetch)
+                 (uri (list (string-append "mirror://sourceforge/expat/expat/"
 -                                          version "/expat-" version 
".tar.bz2")
++                                          version "/expat-" version ".tar.xz")
+                            (string-append
+                             
"https://github.com/libexpat/libexpat/releases/download/R_";
+                             (string-map dot->underscore version)
 -                            "/expat-" version ".tar.bz2")))
++                            "/expat-" version ".tar.xz")))
+                 (sha256
+                  (base32
 -                  "1wl1x93b5w457ddsdgj0lh7yjq4q6l7wfbgwhagkc8fm2qkkrd0p")))))
++                  "1y5yax6bq8p9xk49zqkd62pxk8bq266wrgbrqgaxp3wsrw5g9qrh")))))
      (build-system gnu-build-system)
      (home-page "https://libexpat.github.io/";)
      (synopsis "Stream-oriented XML parser library written in C")
diff --cc guix/gexp.scm
index 9bf68a9,ce48d8d..186bce1
--- a/guix/gexp.scm
+++ b/guix/gexp.scm
@@@ -618,6 -636,130 +636,127 @@@ names and file names suitable for the #
      (lambda (system)
        ((force proc) system))))
  
+ ;; Representation of a gexp instantiated for a given target and system.
+ (define-record-type <lowered-gexp>
+   (lowered-gexp sexp inputs guile load-path load-compiled-path)
+   lowered-gexp?
+   (sexp                lowered-gexp-sexp)         ;sexp
+   (inputs              lowered-gexp-inputs)       ;list of <gexp-input>
+   (guile               lowered-gexp-guile)        ;<derivation> | #f
+   (load-path           lowered-gexp-load-path)    ;list of store items
+   (load-compiled-path  lowered-gexp-load-compiled-path)) ;list of store items
+ 
+ (define* (lower-gexp exp
+                      #:key
+                      (module-path %load-path)
+                      (system (%current-system))
+                      (target 'current)
+                      (graft? (%graft?))
+                      (guile-for-build (%guile-for-build))
+                      (effective-version "2.2")
+ 
 -                     deprecation-warnings
 -                     (pre-load-modules? #t))      ;transitional
++                     deprecation-warnings)
+   "*Note: This API is subject to change; use at your own risk!*
+ 
+ Lower EXP, a gexp, instantiating it for SYSTEM and TARGET.  Return a
+ <lowered-gexp> ready to be used.
+ 
+ Lowered gexps are an intermediate representation that's useful for
+ applications that deal with gexps outside in a way that is disconnected from
+ derivations--e.g., code evaluated for its side effects."
+   (define %modules
+     (delete-duplicates (gexp-modules exp)))
+ 
+   (define (search-path modules extensions suffix)
+     (append (match modules
+               ((? derivation? drv)
+                (list (derivation->output-path drv)))
+               (#f
+                '())
+               ((? store-path? item)
+                (list item)))
+             (map (lambda (extension)
+                    (string-append (match extension
+                                     ((? derivation? drv)
+                                      (derivation->output-path drv))
+                                     ((? store-path? item)
+                                      item))
+                                   suffix))
+                  extensions)))
+ 
+   (mlet* %store-monad ( ;; The following binding forces '%current-system' and
+                        ;; '%current-target-system' to be looked up at >>=
+                        ;; time.
+                        (graft?    (set-grafting graft?))
+ 
+                        (system -> (or system (%current-system)))
+                        (target -> (if (eq? target 'current)
+                                       (%current-target-system)
+                                       target))
+                        (guile     (if guile-for-build
+                                       (return guile-for-build)
+                                       (default-guile-derivation system)))
+                        (normals  (lower-inputs (gexp-inputs exp)
+                                                #:system system
+                                                #:target target))
+                        (natives  (lower-inputs (gexp-native-inputs exp)
+                                                #:system system
+                                                #:target #f))
+                        (inputs -> (append normals natives))
+                        (sexp     (gexp->sexp exp
+                                              #:system system
+                                              #:target target))
+                        (extensions -> (gexp-extensions exp))
+                        (exts     (mapm %store-monad
+                                        (lambda (obj)
+                                          (lower-object obj system))
+                                        extensions))
+                        (modules  (if (pair? %modules)
+                                      (imported-modules %modules
+                                                        #:system system
+                                                        #:module-path 
module-path)
+                                      (return #f)))
+                        (compiled (if (pair? %modules)
+                                      (compiled-modules %modules
+                                                        #:system system
+                                                        #:module-path 
module-path
+                                                        #:extensions extensions
+                                                        #:guile guile
 -                                                       #:pre-load-modules?
 -                                                       pre-load-modules?
+                                                        #:deprecation-warnings
+                                                        deprecation-warnings)
+                                      (return #f))))
+     (define load-path
+       (search-path modules exts
+                    (string-append "/share/guile/site/" effective-version)))
+ 
+     (define load-compiled-path
+       (search-path compiled exts
+                    (string-append "/lib/guile/" effective-version
+                                   "/site-ccache")))
+ 
+     (mbegin %store-monad
+       (set-grafting graft?)                       ;restore the initial setting
+       (return (lowered-gexp sexp
+                             `(,@(if modules
+                                     (list (gexp-input modules))
+                                     '())
+                               ,@(if compiled
+                                     (list (gexp-input compiled))
+                                     '())
+                               ,@(map gexp-input exts)
+                               ,@inputs)
+                             guile
+                             load-path
+                             load-compiled-path)))))
+ 
+ (define (gexp-input->tuple input)
+   "Given INPUT, a <gexp-input> record, return the corresponding input tuple
+ suitable for the 'derivation' procedure."
+   (match (gexp-input-output input)
+     ("out"  `(,(gexp-input-thing input)))
+     (output `(,(gexp-input-thing input)
+               ,(gexp-input-output input)))))
+ 
  (define* (gexp->derivation name exp
                             #:key
                             system (target 'current)
@@@ -708,38 -856,21 +847,19 @@@ The other arguments are as for 'derivat
                         (target -> (if (eq? target 'current)
                                        (%current-target-system)
                                        target))
-                        (normals  (lower-inputs (gexp-inputs exp)
-                                                #:system system
-                                                #:target target))
-                        (natives  (lower-inputs (gexp-native-inputs exp)
-                                                #:system system
-                                                #:target #f))
-                        (inputs -> (append normals natives))
-                        (sexp     (gexp->sexp exp
-                                              #:system system
-                                              #:target target))
-                        (builder  (text-file script-name
-                                             (object->string sexp)))
-                        (extensions -> (gexp-extensions exp))
-                        (exts     (mapm %store-monad
-                                        (lambda (obj)
-                                          (lower-object obj system))
-                                        extensions))
-                        (modules  (if (pair? %modules)
-                                      (imported-modules %modules
-                                                        #:system system
-                                                        #:module-path 
module-path
-                                                        #:guile 
guile-for-build)
-                                      (return #f)))
-                        (compiled (if (pair? %modules)
-                                      (compiled-modules %modules
-                                                        #:system system
-                                                        #:module-path 
module-path
-                                                        #:extensions extensions
-                                                        #:guile guile-for-build
-                                                        #:deprecation-warnings
-                                                        deprecation-warnings)
-                                      (return #f)))
+                        (exp ->    (add-modules exp modules))
+                        (lowered   (lower-gexp exp
+                                               #:module-path module-path
+                                               #:system system
+                                               #:target target
+                                               #:graft? requested-graft?
+                                               #:guile-for-build
+                                               guile-for-build
+                                               #:effective-version
+                                               effective-version
+                                               #:deprecation-warnings
 -                                              deprecation-warnings
 -                                              #:pre-load-modules?
 -                                              pre-load-modules?))
++                                              deprecation-warnings))
+ 
                         (graphs   (if references-graphs
                                       (lower-reference-graphs references-graphs
                                                               #:system system
diff --cc po/guix/POTFILES.in
index 9c4b6de,f5fc495..4d77e65
--- a/po/guix/POTFILES.in
+++ b/po/guix/POTFILES.in
@@@ -36,8 -36,7 +36,9 @@@ gnu/installer/steps.sc
  gnu/installer/timezone.scm
  gnu/installer/user.scm
  gnu/installer/utils.scm
+ gnu/machine/ssh.scm
 +gnu/packages/bootstrap.scm
 +guix/build/utils.scm
  guix/scripts.scm
  guix/scripts/build.scm
  guix/discovery.scm



reply via email to

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