mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 05:18:07 -05:00
Merge branch 'master' into core-updates
This commit is contained in:
commit
9815739e9b
24 changed files with 335 additions and 135 deletions
|
@ -571,6 +571,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/emacs-source-date-epoch.patch \
|
||||
%D%/packages/patches/eudev-rules-directory.patch \
|
||||
%D%/packages/patches/evilwm-lost-focus-bug.patch \
|
||||
%D%/packages/patches/exim-CVE-2017-1000369.patch \
|
||||
%D%/packages/patches/fabric-tests.patch \
|
||||
%D%/packages/patches/fastcap-mulGlobal.patch \
|
||||
%D%/packages/patches/fastcap-mulSetup.patch \
|
||||
|
@ -805,7 +806,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \
|
||||
%D%/packages/patches/metabat-remove-compilation-date.patch \
|
||||
%D%/packages/patches/mhash-keygen-test-segfault.patch \
|
||||
%D%/packages/patches/miniupnpc-CVE-2017-8798.patch \
|
||||
%D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch \
|
||||
%D%/packages/patches/mpc123-initialize-ao.patch \
|
||||
%D%/packages/patches/module-init-tools-moduledir.patch \
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
|
@ -114,6 +114,9 @@ (define-public econnman
|
|||
`(#:configure-flags '("--localstatedir=/var")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-home-directory
|
||||
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
||||
(lambda _ (setenv "HOME" "/tmp") #t))
|
||||
(add-after 'install 'wrap-binary
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
|
|
|
@ -507,7 +507,8 @@ (define-public propeller-gcc-4
|
|||
(patches
|
||||
(append
|
||||
(origin-patches (package-source gcc-4.7))
|
||||
(search-patches "gcc-4.6-gnu-inline.patch")))))
|
||||
(search-patches "gcc-4.6-gnu-inline.patch"
|
||||
"gcc-cross-environment-variables.patch")))))
|
||||
(home-page "https://github.com/dbetz/propgcc-gcc"))))
|
||||
|
||||
;; There is no release, so we take the latest version as referenced from here:
|
||||
|
|
|
@ -58,7 +58,7 @@ (define-module (gnu packages enlightenment)
|
|||
(define-public efl
|
||||
(package
|
||||
(name "efl")
|
||||
(version "1.18.5")
|
||||
(version "1.19.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -66,7 +66,7 @@ (define-public efl
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wxz00cijynamm0sx4ss4hp89zyz5y6zliv5zd905jn4nak2mw2n"))))
|
||||
"0fndwraca9rg0bz3al4isdprvyw56szr88qiyvglb4j8ygsylscc"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -109,7 +109,7 @@ (define-public efl
|
|||
("xproto" ,xproto)))
|
||||
(propagated-inputs
|
||||
;; All these inputs are in package config files in section
|
||||
;; Require.private.
|
||||
;; Requires.private.
|
||||
`(("bullet" ,bullet) ; ephysics.pc
|
||||
("dbus" ,dbus) ; eldbus.pc, elementary.pc, elocation.pc, ethumb_client.pc
|
||||
("eudev" ,eudev) ; eeze.pc
|
||||
|
@ -123,17 +123,23 @@ (define-public efl
|
|||
("libsndfile" ,libsndfile) ; ecore-audio.pc, ecore-audio-cxx.pc
|
||||
("openssl" ,openssl) ; ecore-con.pc, eet.pc, eet-cxx.pc, emile.pc
|
||||
("pulseaudio" ,pulseaudio) ; ecore-audio.pc, ecore-audio-cxx.pc
|
||||
("util-linux" ,util-linux) ; eeze.pc
|
||||
("util-linux" ,util-linux) ; mount: eeze.pc
|
||||
("zlib" ,zlib))) ; eet.pc, eet-cxx.pc, emile.pc
|
||||
(arguments
|
||||
`(#:configure-flags '("--disable-silent-rules"
|
||||
"--disable-systemd"
|
||||
"--enable-liblz4"
|
||||
"--enable-xinput22"
|
||||
"--enable-image-loader-webp"
|
||||
"--enable-multisense"
|
||||
"--with-opengl=es"
|
||||
"--enable-egl"
|
||||
"--enable-harfbuzz")))
|
||||
"--enable-harfbuzz")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-home-directory
|
||||
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
||||
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
||||
(home-page "https://www.enlightenment.org/about-efl")
|
||||
(synopsis "Enlightenment Foundation Libraries")
|
||||
(description
|
||||
|
@ -157,6 +163,12 @@ (define-public terminology
|
|||
(base32
|
||||
"1x4j2q4qqj10ckbka0zaq2r2zm66ff1x791kp8slv1ff7fw45vdz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-home-directory
|
||||
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
||||
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
|
@ -184,6 +196,12 @@ (define-public rage
|
|||
(base32
|
||||
"06kbgcnbhl9clhdl7k983m4d0n6ggsl4qvizzi1nrp8c7np87fix"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-home-directory
|
||||
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
||||
(lambda _ (setenv "HOME" "/tmp") #t)))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
|
@ -198,7 +216,7 @@ (define-public rage
|
|||
(define-public enlightenment
|
||||
(package
|
||||
(name "enlightenment")
|
||||
(version "0.21.7")
|
||||
(version "0.21.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -206,25 +224,34 @@ (define-public enlightenment
|
|||
name "/" name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xvngjdsa0p901vfhrh2qpa50k32hwwhc8bgi16a9b5d9byzfhvn"))))
|
||||
"0cjjiip12hd8bfjl9ccl3vzl81pxh1wpymxk2yvrzf6ap5girhps"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--enable-mount-eeze")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'fix-keyboard
|
||||
(lambda _
|
||||
(let ((xkeyboard (assoc-ref %build-inputs "xkeyboard-config")))
|
||||
(add-before 'configure 'set-system-actions
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xkeyboard (assoc-ref inputs "xkeyboard-config"))
|
||||
(utils (assoc-ref inputs "util-linux")))
|
||||
;; We need to patch the path to 'base.lst' to be able
|
||||
;; to switch the keyboard layout in E.
|
||||
(substitute* "src/modules/xkbswitch/e_mod_parse.c"
|
||||
(("/usr/share/X11/xkb/rules/xorg.lst")
|
||||
(string-append xkeyboard
|
||||
"/share/X11/xkb/rules/base.lst")))
|
||||
(substitute* "configure"
|
||||
(("/bin/mount") (string-append utils "/bin/mount"))
|
||||
(("/bin/umount") (string-append utils "/bin/umount"))
|
||||
(("/usr/bin/eject") (string-append utils "/bin/eject"))
|
||||
; TODO: Replace suspend and hibernate also.
|
||||
(("/sbin/shutdown -h now") "/run/current-system/profile/sbin/halt")
|
||||
(("/sbin/shutdown -r now") "/run/current-system/profile/sbin/reboot"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("pkg-config" ,pkg-config)))
|
||||
("pkg-config" ,pkg-config)
|
||||
("util-linux" ,util-linux)))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("dbus" ,dbus)
|
||||
|
@ -247,14 +274,14 @@ (define-public enlightenment
|
|||
(define-public python-efl
|
||||
(package
|
||||
(name "python-efl")
|
||||
(version "1.18.0")
|
||||
(version "1.19.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python-efl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x49rb7mx7ysjp23m919r2rx8qnl4xackhl9s9x2697m7cs77n1r"))))
|
||||
"0l0f9bv1134qh5376p5asycncidrhp8hdb6qwd8ybr1a61q9zq67"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
@ -297,7 +324,7 @@ (define-public python2-efl
|
|||
(define-public edi
|
||||
(package
|
||||
(name "edi")
|
||||
(version "0.4.0")
|
||||
(version "0.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -305,9 +332,15 @@ (define-public edi
|
|||
"download/v" version "/edi-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qczz5psryxasphg5km95845h510237rf0k1dy8f0dad52ii90j1"))))
|
||||
"1l90x1bw82a0df6r11wd55qizhi99gg0qcljwxga606ahy6ycnkn"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:configure-flags '("--with-tests=coverage")))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-home-directory
|
||||
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
|
||||
(lambda _ (setenv "HOME" "/tmp") #t)))
|
||||
#:configure-flags '("--with-tests=coverage")))
|
||||
(native-inputs
|
||||
`(("check" ,check)
|
||||
("lcov" ,lcov)
|
||||
|
|
|
@ -49,7 +49,7 @@ (define-module (gnu packages finance)
|
|||
(define-public bitcoin-core
|
||||
(package
|
||||
(name "bitcoin-core")
|
||||
(version "0.14.1")
|
||||
(version "0.14.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -57,7 +57,7 @@ (define-public bitcoin-core
|
|||
version "/bitcoin-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"18zrsinlwkj4q5bj2hzswbhswkvd0sdfi6skfwqwwk85gzh064pj"))))
|
||||
"1jp8vdc25gs46gj1d9mraqa1xnampffpa7mdy0fw80xca77fbi0s"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
|
|
|
@ -6291,7 +6291,11 @@ (define-public gnome-planner
|
|||
;; Disable the Python bindings because the Planner program functions
|
||||
;; without them, and (as of 2017-06-13) we have not packaged all of
|
||||
;; packages that are necessary for building the Python bindings.
|
||||
`(#:configure-flags (list "--disable-python")))
|
||||
`(#:configure-flags
|
||||
(list "--disable-python"
|
||||
,@(if (string=? "aarch64-linux" (%current-system))
|
||||
'("--build=aarch64-unknown-linux-gnu")
|
||||
'()))))
|
||||
(inputs
|
||||
`(("libgnomecanvas" ,libgnomecanvas)
|
||||
("libgnomeui" ,libgnomeui)
|
||||
|
|
|
@ -239,7 +239,7 @@ (define-public guile-2.2
|
|||
(snippet '(for-each delete-file
|
||||
(find-files "prebuilt" "\\.go$")))))
|
||||
(properties '((timeout . 72000) ;20 hours
|
||||
(max-silent-time . 21600))) ;6 hours (needed on ARM
|
||||
(max-silent-time . 36000))) ;10 hours (needed on ARM
|
||||
; when heavily loaded)
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
|
|
|
@ -365,19 +365,49 @@ (define-public linux-libre
|
|||
(make-linux-libre %linux-libre-version
|
||||
%linux-libre-hash
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
#:configuration-file kernel-config
|
||||
#:patches
|
||||
(list %boot-logo-patch
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "\
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=167ec8235f978d7af78c73e9490dae1af3fee67f")
|
||||
(file-name "linux-libre-4.11-CVE-2017-1000364.patch")
|
||||
(sha256
|
||||
(base32
|
||||
"0hv3lxjgpssvsldkydg5q7znnzxv5ncpzrk6g11q01k3gkl0q689"))))))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.33"
|
||||
"1dam6vqymhlx1vsl0lzxphamiifgyf97snxg18b2czqq402nz094"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
#:configuration-file kernel-config
|
||||
#:patches
|
||||
(list %boot-logo-patch
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "\
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=37c40b6777f0bc8a63f616479c469b371097f333")
|
||||
(file-name "linux-libre-4.9-CVE-2017-1000364.patch")
|
||||
(sha256
|
||||
(base32
|
||||
"0zhnh8ysiqldxlnd50bjrxagzx29kc8nlajdrikii2x2ibkbfb4i"))))))
|
||||
|
||||
(define-public linux-libre-4.4
|
||||
(make-linux-libre "4.4.73"
|
||||
"144ssqw1dr86z4cgl797pq5rggfibsxqk7wmfbl6j92l1cj6yjrz"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
#:configuration-file kernel-config
|
||||
#:patches
|
||||
(list %boot-logo-patch
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "\
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=87422f5b9b4f43efef4eaf37d7d040aed96500cb")
|
||||
(file-name "linux-libre-4.4-CVE-2017-1000364.patch")
|
||||
(sha256
|
||||
(base32
|
||||
"137p1cpiwlbvw4x12w1l23iy593xmdry60kd7j9kk690r9arfagw"))))))
|
||||
|
||||
(define-public linux-libre-4.1
|
||||
(make-linux-libre "4.1.41"
|
||||
|
|
|
@ -996,7 +996,7 @@ (define-public msmtp
|
|||
(define-public exim
|
||||
(package
|
||||
(name "exim")
|
||||
(version "4.87.1")
|
||||
(version "4.89")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1004,9 +1004,10 @@ (define-public exim
|
|||
version ".tar.bz2")
|
||||
(string-append "ftp://ftp.exim.org/pub/exim/exim4/old/exim-"
|
||||
version ".tar.bz2")))
|
||||
(patches (search-patches "exim-CVE-2017-1000369.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"050m2gjzpc6vyik458h1j0vi8bxplkzjsyndkyd2y394i569kdyl"))))
|
||||
"1c0syp7yxngmq7y8vqsrvijinzin5m941vn0ljihdfld7kh2wbwi"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("bdb" ,bdb)
|
||||
|
|
|
@ -317,7 +317,7 @@ (define-public ocaml4.01-gsl
|
|||
(define-public glpk
|
||||
(package
|
||||
(name "glpk")
|
||||
(version "4.61")
|
||||
(version "4.62")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -325,7 +325,7 @@ (define-public glpk
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1adbvwiaqrv9pql9ry3lhn2vfsxnff2vh4fs477d90kpfx0xwrlq"))))
|
||||
"0w7s3869ybwyq9a4490dikpib1qp3jnn5nqz1vvwqy1qz3ilnvh9"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("gmp" ,gmp)))
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2014, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2016 Stefan Reichör <stefan@xsteve.at>
|
||||
;;; Copyright © 2015, 2016, 2017 Stefan Reichör <stefan@xsteve.at>
|
||||
;;; Copyright © 2016 Raimon Grau <raimonster@gmail.com>
|
||||
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
||||
|
@ -474,7 +474,7 @@ (define-public whois
|
|||
(define-public wireshark
|
||||
(package
|
||||
(name "wireshark")
|
||||
(version "2.2.6")
|
||||
(version "2.2.7")
|
||||
(synopsis "Network traffic analyzer")
|
||||
(source
|
||||
(origin
|
||||
|
@ -483,7 +483,7 @@ (define-public wireshark
|
|||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jd89i9si43lyv3hsl6p1lkjmz4zagvc37wcbigsxxc5v8gda9zn"))))
|
||||
"1dfvhra5v6xhzbp097qsxi0zvirw0srbasl4v1wjf58v49idz7b8"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(inputs `(("bison" ,bison)
|
||||
("c-ares" ,c-ares)
|
||||
|
@ -522,6 +522,31 @@ (define-public wireshark
|
|||
(license license:gpl2+)
|
||||
(home-page "https://www.wireshark.org/")))
|
||||
|
||||
(define-public fping
|
||||
(package
|
||||
(name "fping")
|
||||
(version "4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://fping.org/dist/fping-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1kp81wchi79l8z8rrj602fpjrd8bi84y3i7fsaclzlwap5943sv7"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://fping.org/")
|
||||
(synopsis "Send ICMP ECHO_REQUEST packets to network hosts")
|
||||
(description
|
||||
"fping is a ping like program which uses the Internet Control Message
|
||||
Protocol (ICMP) echo request to determine if a target host is responding.
|
||||
fping differs from ping in that you can specify any number of targets on the
|
||||
command line, or specify a file containing the lists of targets to ping.
|
||||
Instead of sending to one target until it times out or replies, fping will
|
||||
send out a ping packet and move on to the next target in a round-robin
|
||||
fashion.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public httping
|
||||
(package
|
||||
(name "httping")
|
||||
|
|
59
gnu/packages/patches/exim-CVE-2017-1000369.patch
Normal file
59
gnu/packages/patches/exim-CVE-2017-1000369.patch
Normal file
|
@ -0,0 +1,59 @@
|
|||
Fix CVE-2017-1000369:
|
||||
|
||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-1000369
|
||||
https://www.qualys.com/2017/06/19/stack-clash/stack-clash.txt
|
||||
|
||||
Patch adapted from upstream source repository:
|
||||
|
||||
https://git.exim.org/exim.git/commit/65e061b76867a9ea7aeeb535341b790b90ae6c21
|
||||
|
||||
From 65e061b76867a9ea7aeeb535341b790b90ae6c21 Mon Sep 17 00:00:00 2001
|
||||
From: "Heiko Schlittermann (HS12-RIPE)" <hs@schlittermann.de>
|
||||
Date: Wed, 31 May 2017 23:08:56 +0200
|
||||
Subject: [PATCH] Cleanup (prevent repeated use of -p/-oMr to avoid mem leak)
|
||||
|
||||
---
|
||||
doc/doc-docbook/spec.xfpt | 3 ++-
|
||||
src/src/exim.c | 19 +++++++++++++++++--
|
||||
2 files changed, 19 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/src/exim.c b/src/src/exim.c
|
||||
index 67583e58..88e11977 100644
|
||||
--- a/src/exim.c
|
||||
+++ b/src/exim.c
|
||||
@@ -3106,7 +3106,14 @@ for (i = 1; i < argc; i++)
|
||||
|
||||
/* -oMr: Received protocol */
|
||||
|
||||
- else if (Ustrcmp(argrest, "Mr") == 0) received_protocol = argv[++i];
|
||||
+ else if (Ustrcmp(argrest, "Mr") == 0)
|
||||
+
|
||||
+ if (received_protocol)
|
||||
+ {
|
||||
+ fprintf(stderr, "received_protocol is set already\n");
|
||||
+ exit(EXIT_FAILURE);
|
||||
+ }
|
||||
+ else received_protocol = argv[++i];
|
||||
|
||||
/* -oMs: Set sender host name */
|
||||
|
||||
@@ -3202,7 +3209,15 @@ for (i = 1; i < argc; i++)
|
||||
|
||||
if (*argrest != 0)
|
||||
{
|
||||
- uschar *hn = Ustrchr(argrest, ':');
|
||||
+ uschar *hn;
|
||||
+
|
||||
+ if (received_protocol)
|
||||
+ {
|
||||
+ fprintf(stderr, "received_protocol is set already\n");
|
||||
+ exit(EXIT_FAILURE);
|
||||
+ }
|
||||
+
|
||||
+ hn = Ustrchr(argrest, ':');
|
||||
if (hn == NULL)
|
||||
{
|
||||
received_protocol = argrest;
|
||||
--
|
||||
2.13.1
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
Fix CVE-2017-8798.
|
||||
|
||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8798
|
||||
http://seclists.org/oss-sec/2017/q2/247
|
||||
|
||||
Patch copied from upstream source repository, with Changelog entry removed:
|
||||
|
||||
https://github.com/miniupnp/miniupnp/commit/f0f1f4b22d6a98536377a1bb07e7c20e4703d229
|
||||
|
||||
diff --git a/miniwget.c b/miniwget.c
|
||||
index 37cb47b..1eda57c 100644
|
||||
--- a/miniwget.c
|
||||
+++ b/miniwget.c
|
||||
@@ -284,11 +284,12 @@ getHTTPResponse(int s, int * size, int * status_code)
|
||||
goto end_of_stream;
|
||||
}
|
||||
}
|
||||
- bytestocopy = ((int)chunksize < (n - i))?chunksize:(unsigned int)(n - i);
|
||||
+ /* it is guaranteed that (n >= i) */
|
||||
+ bytestocopy = (chunksize < (unsigned int)(n - i))?chunksize:(unsigned int)(n - i);
|
||||
if((content_buf_used + bytestocopy) > content_buf_len)
|
||||
{
|
||||
char * tmp;
|
||||
- if(content_length >= (int)(content_buf_used + bytestocopy)) {
|
||||
+ if((content_length >= 0) && ((unsigned int)content_length >= (content_buf_used + bytestocopy))) {
|
||||
content_buf_len = content_length;
|
||||
} else {
|
||||
content_buf_len = content_buf_used + bytestocopy;
|
||||
@@ -313,14 +314,15 @@ getHTTPResponse(int s, int * size, int * status_code)
|
||||
{
|
||||
/* not chunked */
|
||||
if(content_length > 0
|
||||
- && (int)(content_buf_used + n) > content_length) {
|
||||
+ && (content_buf_used + n) > (unsigned int)content_length) {
|
||||
/* skipping additional bytes */
|
||||
n = content_length - content_buf_used;
|
||||
}
|
||||
if(content_buf_used + n > content_buf_len)
|
||||
{
|
||||
char * tmp;
|
||||
- if(content_length >= (int)(content_buf_used + n)) {
|
||||
+ if(content_length >= 0
|
||||
+ && (unsigned int)content_length >= (content_buf_used + n)) {
|
||||
content_buf_len = content_length;
|
||||
} else {
|
||||
content_buf_len = content_buf_used + n;
|
||||
@@ -340,7 +342,7 @@ getHTTPResponse(int s, int * size, int * status_code)
|
||||
}
|
||||
}
|
||||
/* use the Content-Length header value if available */
|
||||
- if(content_length > 0 && (int)content_buf_used >= content_length)
|
||||
+ if(content_length > 0 && content_buf_used >= (unsigned int)content_length)
|
||||
{
|
||||
#ifdef DEBUG
|
||||
printf("End of HTTP content\n");
|
|
@ -925,6 +925,24 @@ (define-public python-mock
|
|||
(define-public python2-mock
|
||||
(package-with-python2 python-mock))
|
||||
|
||||
;;; Some packages (notably, certbot and python-acme) rely on this newer version
|
||||
;;; of python-mock. However, a large number of packages fail to build with
|
||||
;;; mock@2, so we add a new variable for now. Also, there may be a dependency
|
||||
;;; cycle between mock and six, so we avoid creating python2-mock@2 for now.
|
||||
(define-public python-mock-2
|
||||
(package
|
||||
(inherit python-mock)
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mock" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1flbpksir5sqrvq2z0dp8sl4bzbadg21sj4d42w3klpdfvgvcn5i"))))
|
||||
(propagated-inputs
|
||||
`(("python-pbr" ,python-pbr-minimal)
|
||||
,@(package-propagated-inputs python-mock)))))
|
||||
|
||||
(define-public python-setuptools
|
||||
(package
|
||||
|
@ -15382,3 +15400,26 @@ (define-public python-apache-libcloud
|
|||
|
||||
(define-public python2-apache-libcloud
|
||||
(package-with-python2 python-apache-libcloud))
|
||||
|
||||
(define-public python-smmap2
|
||||
(package
|
||||
(name "python-smmap2")
|
||||
(version "2.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "smmap2" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hvn28p3zvxa98sbi9lrqvv2ps4q284j4jq9a619zw0m7yv0sly7"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-nosexcover" ,python-nosexcover)))
|
||||
(home-page "https://github.com/Byron/smmap")
|
||||
(synopsis "Python sliding window memory map manager")
|
||||
(description "@code{smmap2} is a pure Python implementation of a sliding
|
||||
window memory map manager.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-smmap2
|
||||
(package-with-python2 python-smmap2))
|
||||
|
|
|
@ -93,15 +93,15 @@ (define-public libyubikey
|
|||
(define-public pcsc-lite
|
||||
(package
|
||||
(name "pcsc-lite")
|
||||
(version "1.8.21")
|
||||
(version "1.8.22")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://alioth.debian.org/frs/download.php/file/4216/"
|
||||
"https://alioth.debian.org/frs/download.php/file/4225/"
|
||||
"pcsc-lite-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1b8kwl81f6s3y7qh68ahr8sp8a0w6m464v9b3s4zxq2cgpmnaczy"))))
|
||||
"01flkdyqs7kr6c63dv2qg8dwir3v9jlr9rzlw7vafrivxmhqydba"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--enable-usbdropdir=/var/lib/pcsc/drivers")))
|
||||
|
|
|
@ -172,7 +172,7 @@ (define-public fish-guix
|
|||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)))) ; No configure script.
|
||||
(home-page "https://pragmatique.xyz/software/fish-guix.html")
|
||||
(home-page "https://www.infotropique.org/projects/fish-guix/")
|
||||
(synopsis "Fish completions for Guix")
|
||||
(description
|
||||
"Fish-guix provides completions for Guix for users of the fish shell.")
|
||||
|
|
|
@ -195,7 +195,7 @@ (define-public texlive-dvips
|
|||
(revision %texlive-revision)))
|
||||
(sha256
|
||||
(base32
|
||||
"1k11yvz4q95bxyxczwvd4r177h6a2gg03xmf51kmgjgz8an2gq2w"))))
|
||||
"0fcy2hpapbj01ncpjj3v39yhr0jjxb6rm13qaxjjw66s3vydxls1"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
|
@ -650,7 +650,7 @@ (define-public texlive-tex-plain
|
|||
(revision %texlive-revision)))
|
||||
(sha256
|
||||
(base32
|
||||
"1ifmbyl3ir8k0v1g25xjb5rcyy5vhj8a3fa2088nczga09hna5vn"))))
|
||||
"0mjgl3gscn3ps29yjambz1j9fg81ynnncb96vpprwx4xsijhsns0"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
|
@ -835,7 +835,7 @@ (define-public texlive-latex-filecontents
|
|||
(define-public texlive-generic-ifxetex
|
||||
(package
|
||||
(name "texlive-generic-ifxetex")
|
||||
(version "0.6")
|
||||
(version (number->string %texlive-revision))
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (texlive-ref "generic" "ifxetex"))
|
||||
|
@ -892,7 +892,7 @@ (define-public texlive-latex-graphics
|
|||
(uri (texlive-ref "latex" "graphics"))
|
||||
(sha256
|
||||
(base32
|
||||
"17ka701xr9nqsjlhz30hphr8d9j4zzwgv5zl5r2f118yzqh9c34v"))))
|
||||
"07azyn0b1s49vbdlr6dmygrminxp72ndl24j1091hiiccvrjq3xc"))))
|
||||
(build-system texlive-build-system)
|
||||
(arguments
|
||||
'(#:tex-directory "latex/graphics"
|
||||
|
@ -1101,7 +1101,7 @@ (define-public texlive-latex-l3kernel
|
|||
(uri (texlive-ref "latex" "l3kernel"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ndqw0flhl20f4ny5lssp8rqpnj5kglyg59whbdrxbh2zc7w7j0b"))))
|
||||
"0r0wfk594j8wkdqhh21haimwsfq8x5jch4ldm21hkzk5dnmvpbg6"))))
|
||||
(build-system texlive-build-system)
|
||||
(arguments
|
||||
'(#:tex-directory "latex/l3kernel"))
|
||||
|
@ -1124,7 +1124,7 @@ (define-public texlive-latex-l3packages
|
|||
(uri (texlive-ref "latex" "l3packages"))
|
||||
(sha256
|
||||
(base32
|
||||
"1p1y9my6ccmp2ab91fzqqgih8ifrk4y3wyh397kagiq9f6a6v91f"))))
|
||||
"16jplkvzdysfssijq9l051nsks65c2nrarsl17k8gjhc28yznj8y"))))
|
||||
(build-system texlive-build-system)
|
||||
(arguments
|
||||
'(#:tex-directory "latex/l3packages"
|
||||
|
|
|
@ -498,7 +498,7 @@ (define-public python-acme
|
|||
#t))))))
|
||||
;; TODO: Add optional inputs for testing.
|
||||
(native-inputs
|
||||
`(("python-mock" ,python-mock)
|
||||
`(("python-mock" ,python-mock-2)
|
||||
;; For documentation
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("python-sphinxcontrib-programoutput" ,python-sphinxcontrib-programoutput)
|
||||
|
@ -534,8 +534,7 @@ (define-public certbot
|
|||
"1srvmjxz75dbafx7xfg1w3n9h3srr9p2ljnfsih9dwwd5cxh9i5q"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
,@(substitute-keyword-arguments (package-arguments python-acme)
|
||||
`(,@(substitute-keyword-arguments (package-arguments python-acme)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'install-documentation
|
||||
|
@ -550,27 +549,27 @@ (define-public certbot
|
|||
#t))))))))
|
||||
;; TODO: Add optional inputs for testing.
|
||||
(native-inputs
|
||||
`(("python2-nose" ,python2-nose)
|
||||
("python2-mock" ,python2-mock)
|
||||
`(("python-nose" ,python-nose)
|
||||
("python-mock" ,python-mock-2)
|
||||
;; For documentation
|
||||
("python2-sphinx" ,python2-sphinx)
|
||||
("python2-sphinx-rtd-theme" ,python2-sphinx-rtd-theme)
|
||||
("python2-sphinx-repoze-autointerface" ,python2-sphinx-repoze-autointerface)
|
||||
("python2-sphinxcontrib-programoutput" ,python2-sphinxcontrib-programoutput)
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme)
|
||||
("python-sphinx-repoze-autointerface" ,python-sphinx-repoze-autointerface)
|
||||
("python-sphinxcontrib-programoutput" ,python-sphinxcontrib-programoutput)
|
||||
("texinfo" ,texinfo)))
|
||||
(propagated-inputs
|
||||
`(("python2-acme" ,python2-acme)
|
||||
("python2-zope-interface" ,python2-zope-interface)
|
||||
("python2-pyrfc3339" ,python2-pyrfc3339)
|
||||
("python2-pyopenssl" ,python2-pyopenssl)
|
||||
("python2-configobj" ,python2-configobj)
|
||||
("python2-configargparse" ,python2-configargparse)
|
||||
("python2-zope-component" ,python2-zope-component)
|
||||
("python2-parsedatetime" ,python2-parsedatetime)
|
||||
("python2-six" ,python2-six)
|
||||
("python2-psutil" ,python2-psutil)
|
||||
("python2-requests" ,python2-requests)
|
||||
("python2-pytz" ,python2-pytz)))
|
||||
`(("python-acme" ,python-acme)
|
||||
("python-zope-interface" ,python-zope-interface)
|
||||
("python-pyrfc3339" ,python-pyrfc3339)
|
||||
("python-pyopenssl" ,python-pyopenssl)
|
||||
("python-configobj" ,python-configobj)
|
||||
("python-configargparse" ,python-configargparse)
|
||||
("python-zope-component" ,python-zope-component)
|
||||
("python-parsedatetime" ,python-parsedatetime)
|
||||
("python-six" ,python-six)
|
||||
("python-psutil" ,python-psutil)
|
||||
("python-requests" ,python-requests)
|
||||
("python-pytz" ,python-pytz)))
|
||||
(synopsis "Let's Encrypt client by the Electronic Frontier Foundation")
|
||||
(description "Certbot automatically receives and installs X.509 certificates
|
||||
to enable Transport Layer Security (TLS) on servers. It interoperates with the
|
||||
|
|
|
@ -28,15 +28,14 @@ (define-module (gnu packages upnp)
|
|||
(define-public miniupnpc
|
||||
(package
|
||||
(name "miniupnpc")
|
||||
(version "2.0.20170421")
|
||||
(version "2.0.20170509")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://miniupnp.tuxfamily.org/files/"
|
||||
name "-" version ".tar.gz"))
|
||||
(patches (search-patches "miniupnpc-CVE-2017-8798.patch"))
|
||||
(sha256
|
||||
(base32 "0n11m2wq812zms5b21h8ihw1kbyaihj9nqjiida0hskf4dmw4m13"))))
|
||||
(base32 "0spi75q6nafxp3ndnrhrlqagzmjlp8wwlr5x7rnvdpswgxi6ihyk"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("python" ,python-2)))
|
||||
|
|
|
@ -186,12 +186,16 @@ (define-public git
|
|||
,@%gnu-build-system-modules)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'configure 'patch-makefile-shebangs
|
||||
(add-after 'configure 'patch-makefiles
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("/bin/sh") (which "sh"))
|
||||
(("/usr/bin/perl") (which "perl"))
|
||||
(("/usr/bin/python") (which "python")))))
|
||||
(("/usr/bin/python") (which "python")))
|
||||
(substitute* "perl/Makefile"
|
||||
;; Don't create timestamped 'perllocal.pod'.
|
||||
(("\\$< PREFIX=") "$< NO_PERLLOCAL=1 PREFIX="))
|
||||
#t))
|
||||
(add-after 'configure 'add-PM.stamp
|
||||
(lambda _
|
||||
;; Add the "PM.stamp" to avoid "no rule to make target".
|
||||
|
@ -816,6 +820,7 @@ (define-public subversion
|
|||
"subversion/bindings/swig/perl/native"
|
||||
(and (zero?
|
||||
(system* "perl" "Makefile.PL"
|
||||
"NO_PERLLOCAL=1"
|
||||
(string-append "PREFIX=" out)))
|
||||
(zero?
|
||||
(system* "make" "install"
|
||||
|
|
|
@ -1144,7 +1144,7 @@ (define-public you-get
|
|||
(define-public libbluray
|
||||
(package
|
||||
(name "libbluray")
|
||||
(version "1.0.0")
|
||||
(version "1.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.videolan.org/videolan/"
|
||||
|
@ -1152,10 +1152,10 @@ (define-public libbluray
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1k3lag4lxi2jjd3zh4wcb5l3hadzm54j5kagh92yzfy76p9svqzp"))))
|
||||
"0fl5cxfj870rwqmmz3s04wh7wnabb7rnynfj1v3sz37ln8frm7qg"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--disable-bdjava")
|
||||
`(#:configure-flags '("--disable-bdjava-jar")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'fix-dlopen-paths
|
||||
|
|
|
@ -94,14 +94,14 @@ (define-module (gnu packages web)
|
|||
(define-public httpd
|
||||
(package
|
||||
(name "httpd")
|
||||
(version "2.4.25")
|
||||
(version "2.4.26")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://apache/httpd/httpd-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cl0bkqg6srb1sypga0cn8dcmdyxldavij73zmmkxvlz3kgw4zpq"))))
|
||||
"11ykcfv7b9zpd7fb93a7yhnyfwrilryjz21iklaf0yf8mwpvazm0"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pcre" ,pcre "bin"))) ;for 'pcre-config'
|
||||
(inputs `(("apr" ,apr)
|
||||
|
|
|
@ -40,8 +40,8 @@ (define-module (guix build-system texlive)
|
|||
;; Code:
|
||||
|
||||
;; These variables specify the SVN tag and the matching SVN revision.
|
||||
(define %texlive-tag "texlive-2017.0")
|
||||
(define %texlive-revision 44445)
|
||||
(define %texlive-tag "texlive-2017.1")
|
||||
(define %texlive-revision 44591)
|
||||
|
||||
(define (texlive-ref component id)
|
||||
"Return a <svn-reference> object for the package ID, which is part of the
|
||||
|
|
|
@ -322,12 +322,16 @@ (define-syntax read-arg
|
|||
|
||||
(define-record-type <nix-server>
|
||||
(%make-nix-server socket major minor
|
||||
buffer flush
|
||||
ats-cache atts-cache)
|
||||
nix-server?
|
||||
(socket nix-server-socket)
|
||||
(major nix-server-major-version)
|
||||
(minor nix-server-minor-version)
|
||||
|
||||
(buffer nix-server-output-port) ;output port
|
||||
(flush nix-server-flush-output) ;thunk
|
||||
|
||||
;; Caches. We keep them per-connection, because store paths build
|
||||
;; during the session are temporary GC roots kept for the duration of
|
||||
;; the session.
|
||||
|
@ -481,7 +485,11 @@ (define* (open-connection #:optional (uri (%daemon-socket-uri))
|
|||
(&nix-connection-error (file (or port uri))
|
||||
(errno EPROTO))
|
||||
(&message (message "build daemon handshake failed"))))))
|
||||
(let ((port (or port (connect-to-daemon uri))))
|
||||
(let*-values (((port)
|
||||
(or port (connect-to-daemon uri)))
|
||||
((output flush)
|
||||
(buffering-output-port port
|
||||
(make-bytevector 8192))))
|
||||
(write-int %worker-magic-1 port)
|
||||
(let ((r (read-int port)))
|
||||
(and (eqv? r %worker-magic-2)
|
||||
|
@ -499,12 +507,18 @@ (define* (open-connection #:optional (uri (%daemon-socket-uri))
|
|||
(let ((conn (%make-nix-server port
|
||||
(protocol-major v)
|
||||
(protocol-minor v)
|
||||
output flush
|
||||
(make-hash-table 100)
|
||||
(make-hash-table 100))))
|
||||
(let loop ((done? (process-stderr conn)))
|
||||
(or done? (process-stderr conn)))
|
||||
conn)))))))))
|
||||
|
||||
(define (write-buffered-output server)
|
||||
"Flush SERVER's output port."
|
||||
(force-output (nix-server-output-port server))
|
||||
((nix-server-flush-output server)))
|
||||
|
||||
(define (close-connection server)
|
||||
"Close the connection to SERVER."
|
||||
(close (nix-server-socket server)))
|
||||
|
@ -718,6 +732,44 @@ (define socket
|
|||
(let loop ((done? (process-stderr server)))
|
||||
(or done? (process-stderr server)))))
|
||||
|
||||
(define (buffering-output-port port buffer)
|
||||
"Return two value: an output port wrapped around PORT that uses BUFFER (a
|
||||
bytevector) as its internal buffer, and a thunk to flush this output port."
|
||||
;; Note: In Guile 2.2.2, custom binary output ports already have their own
|
||||
;; 4K internal buffer.
|
||||
(define size
|
||||
(bytevector-length buffer))
|
||||
|
||||
(define total 0)
|
||||
|
||||
(define (flush)
|
||||
(put-bytevector port buffer 0 total)
|
||||
(set! total 0))
|
||||
|
||||
(define (write bv offset count)
|
||||
(if (zero? count) ;end of file
|
||||
(flush)
|
||||
(let loop ((offset offset)
|
||||
(count count)
|
||||
(written 0))
|
||||
(cond ((= total size)
|
||||
(flush)
|
||||
(loop offset count written))
|
||||
((zero? count)
|
||||
written)
|
||||
(else
|
||||
(let ((to-copy (min count (- size total))))
|
||||
(bytevector-copy! bv offset buffer total to-copy)
|
||||
(set! total (+ total to-copy))
|
||||
(loop (+ offset to-copy) (- count to-copy)
|
||||
(+ written to-copy))))))))
|
||||
|
||||
;; Note: We need to return FLUSH because the custom binary port has no way
|
||||
;; to be notified of a 'force-output' call on itself.
|
||||
(values (make-custom-binary-output-port "buffering-output-port"
|
||||
write #f #f flush)
|
||||
flush))
|
||||
|
||||
(define %rpc-calls
|
||||
;; Mapping from RPC names (symbols) to invocation counts.
|
||||
(make-hash-table))
|
||||
|
@ -755,11 +807,14 @@ (define-syntax operation
|
|||
((_ (name (type arg) ...) docstring return ...)
|
||||
(lambda (server arg ...)
|
||||
docstring
|
||||
(let ((s (nix-server-socket server)))
|
||||
(let* ((s (nix-server-socket server))
|
||||
(buffered (nix-server-output-port server)))
|
||||
(record-operation 'name)
|
||||
(write-int (operation-id name) s)
|
||||
(write-arg type arg s)
|
||||
(write-int (operation-id name) buffered)
|
||||
(write-arg type arg buffered)
|
||||
...
|
||||
(write-buffered-output server)
|
||||
|
||||
;; Loop until the server is done sending error output.
|
||||
(let loop ((done? (process-stderr server)))
|
||||
(or done? (loop (process-stderr server))))
|
||||
|
|
Loading…
Reference in a new issue