Merge branch 'master' into core-updates

This commit is contained in:
Mark H Weaver 2017-06-20 00:25:59 -04:00
commit 9815739e9b
No known key found for this signature in database
GPG Key ID: 7CEF29847562C516
24 changed files with 335 additions and 135 deletions

View File

@ -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 \

View File

@ -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 @@ sharing) to clients via USB, ethernet, WiFi, cellular and Bluetooth.")
`(#: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"))

View File

@ -507,7 +507,8 @@ with a layered architecture of JTAG interface and TAP support.")
(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:

View File

@ -58,7 +58,7 @@
(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 @@
version ".tar.xz"))
(sha256
(base32
"0wxz00cijynamm0sx4ss4hp89zyz5y6zliv5zd905jn4nak2mw2n"))))
"0fndwraca9rg0bz3al4isdprvyw56szr88qiyvglb4j8ygsylscc"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -109,7 +109,7 @@
("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 @@
("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 @@ removable devices or support for multimedia.")
(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 @@ contents and more.")
(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 @@ Libraries with some extra bells and whistles.")
(define-public enlightenment
(package
(name "enlightenment")
(version "0.21.7")
(version "0.21.8")
(source (origin
(method url-fetch)
(uri
@ -206,25 +224,34 @@ Libraries with some extra bells and whistles.")
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 @@ embedded systems.")
(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 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
(define-public edi
(package
(name "edi")
(version "0.4.0")
(version "0.5.0")
(source
(origin
(method url-fetch)
@ -305,9 +332,15 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
"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)

View File

@ -49,7 +49,7 @@
(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 @@
version "/bitcoin-" version ".tar.gz"))
(sha256
(base32
"18zrsinlwkj4q5bj2hzswbhswkvd0sdfi6skfwqwwk85gzh064pj"))))
"1jp8vdc25gs46gj1d9mraqa1xnampffpa7mdy0fw80xca77fbi0s"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)

View File

@ -6291,7 +6291,11 @@ text views, and buttons to choose the language.")
;; 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)

View File

@ -239,7 +239,7 @@ without requiring the source code to be rewritten.")
(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

View File

@ -365,19 +365,49 @@ It has been modified to remove all non-free binary blobs.")
(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"

View File

@ -996,7 +996,7 @@ delivery.")
(define-public exim
(package
(name "exim")
(version "4.87.1")
(version "4.89")
(source
(origin
(method url-fetch)
@ -1004,9 +1004,10 @@ delivery.")
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)

View File

@ -317,7 +317,7 @@ the OCaml language.")
(define-public glpk
(package
(name "glpk")
(version "4.61")
(version "4.62")
(source
(origin
(method url-fetch)
@ -325,7 +325,7 @@ the OCaml language.")
version ".tar.gz"))
(sha256
(base32
"1adbvwiaqrv9pql9ry3lhn2vfsxnff2vh4fs477d90kpfx0xwrlq"))))
"0w7s3869ybwyq9a4490dikpib1qp3jnn5nqz1vvwqy1qz3ilnvh9"))))
(build-system gnu-build-system)
(inputs
`(("gmp" ,gmp)))

View File

@ -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 @@ which can be used to encrypt a password with @code{crypt(3)}.")
(define-public wireshark
(package
(name "wireshark")
(version "2.2.6")
(version "2.2.7")
(synopsis "Network traffic analyzer")
(source
(origin
@ -483,7 +483,7 @@ which can be used to encrypt a password with @code{crypt(3)}.")
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 @@ network frames.")
(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")

View 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

View File

@ -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");

View File

@ -925,6 +925,24 @@ have been used.")
(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 @@ many of the popular cloud service providers using a unified API.")
(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))

View File

@ -93,15 +93,15 @@ the low-level development kit for the Yubico YubiKey authentication device.")
(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")))

View File

@ -172,7 +172,7 @@ highlighting.")
#: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.")

View File

@ -195,7 +195,7 @@ This package contains the binaries.")
(revision %texlive-revision)))
(sha256
(base32
"1k11yvz4q95bxyxczwvd4r177h6a2gg03xmf51kmgjgz8an2gq2w"))))
"0fcy2hpapbj01ncpjj3v39yhr0jjxb6rm13qaxjjw66s3vydxls1"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@ -650,7 +650,7 @@ symbol fonts.")
(revision %texlive-revision)))
(sha256
(base32
"1ifmbyl3ir8k0v1g25xjb5rcyy5vhj8a3fa2088nczga09hna5vn"))))
"0mjgl3gscn3ps29yjambz1j9fg81ynnncb96vpprwx4xsijhsns0"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@ -835,7 +835,7 @@ overwrite existing files and letting you use @code{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 @@ verbatim source).")
(uri (texlive-ref "latex" "graphics"))
(sha256
(base32
"17ka701xr9nqsjlhz30hphr8d9j4zzwgv5zl5r2f118yzqh9c34v"))))
"07azyn0b1s49vbdlr6dmygrminxp72ndl24j1091hiiccvrjq3xc"))))
(build-system texlive-build-system)
(arguments
'(#:tex-directory "latex/graphics"
@ -1101,7 +1101,7 @@ of file names.")
(uri (texlive-ref "latex" "l3kernel"))
(sha256
(base32
"0ndqw0flhl20f4ny5lssp8rqpnj5kglyg59whbdrxbh2zc7w7j0b"))))
"0r0wfk594j8wkdqhh21haimwsfq8x5jch4ldm21hkzk5dnmvpbg6"))))
(build-system texlive-build-system)
(arguments
'(#:tex-directory "latex/l3kernel"))
@ -1124,7 +1124,7 @@ that the LaTeX3 conventions can be used with regular LaTeX 2e packages.")
(uri (texlive-ref "latex" "l3packages"))
(sha256
(base32
"1p1y9my6ccmp2ab91fzqqgih8ifrk4y3wyh397kagiq9f6a6v91f"))))
"16jplkvzdysfssijq9l051nsks65c2nrarsl17k8gjhc28yznj8y"))))
(build-system texlive-build-system)
(arguments
'(#:tex-directory "latex/l3packages"

View File

@ -498,7 +498,7 @@ security, and applying best practice development processes.")
#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 @@ security, and applying best practice development processes.")
"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 @@ security, and applying best practice development processes.")
#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

View File

@ -28,15 +28,14 @@
(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)))

View File

@ -186,12 +186,16 @@ as well as the classic centralized workflow.")
,@%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 @@ following features:
"subversion/bindings/swig/perl/native"
(and (zero?
(system* "perl" "Makefile.PL"
"NO_PERLLOCAL=1"
(string-append "PREFIX=" out)))
(zero?
(system* "make" "install"

View File

@ -1144,7 +1144,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.")
(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 @@ audio, images) from the Web. It can use either mpv or vlc for playback.")
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

View File

@ -94,14 +94,14 @@
(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)

View File

@ -40,8 +40,8 @@
;; 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

View File

@ -322,12 +322,16 @@
(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 @@ for this connection will be pinned. Return a server object."
(&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 @@ for this connection will be pinned. Return a server object."
(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 @@ encoding conversion errors."
(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 @@ encoding conversion errors."
((_ (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))))