From 606b1a1e6b45cd019159716802d5a6bc1ec10e35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 4 Dec 2018 15:26:40 +0100 Subject: doc: Update substitute server. Fixes an accidental revert in commit 0a5fa004f7f21dc3e01747b8e94fbb21e056e4ca. * doc/guix.texi (SUBSTITUTE-SERVER): Really change to ci.guix.info. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index c138d43242..a08a999ca0 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14,7 +14,7 @@ @set KEY-SERVER pool.sks-keyservers.net @c The official substitute server used by default. -@set SUBSTITUTE-SERVER mirror.hydra.gnu.org +@set SUBSTITUTE-SERVER ci.guix.info @copying Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès@* -- cgit v1.2.3 From 040ae1881952c90dae9478e5cfff6aad0ce950da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 4 Dec 2018 20:29:32 +0100 Subject: tests: Increase root partitions size to 1.2G. The system closure has grown slightly above 1GiB so adjust accordingly. * gnu/tests/install.scm (%simple-installation-script): Increase vdb2 size of 1.2G, (%extlinux-gpt-installation-script); ditto (%simple-installation-script-for-/dev/vda): ditto, (%separate-store-installation-script): ditto for vdb3, (%encrypted-root-installation-script): ditto. --- gnu/tests/install.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 4764ffffde..72e5523942 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -149,7 +149,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts guix build isc-dhcp parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 1G \\ + mkpart primary ext2 3M 1.2G \\ set 1 boot on \\ set 1 bios_grub on mkfs.ext4 -L my-root /dev/vdb2 @@ -174,7 +174,7 @@ guix --version export GUIX_BUILD_OPTIONS=--no-grafts guix build isc-dhcp parted --script /dev/vdb mklabel gpt \\ - mkpart ext2 1M 1G \\ + mkpart ext2 1M 1.2G \\ set 1 legacy_boot on mkfs.ext4 -L my-root -O '^64bit' /dev/vdb1 mount /dev/vdb1 /mnt @@ -377,7 +377,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts guix build isc-dhcp parted --script /dev/vda mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 1G \\ + mkpart primary ext2 3M 1.2G \\ set 1 boot on \\ set 1 bios_grub on mkfs.ext4 -L my-root /dev/vda2 @@ -510,7 +510,7 @@ guix build isc-dhcp parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ mkpart primary ext2 3M 100M \\ - mkpart primary ext2 100M 1G \\ + mkpart primary ext2 100M 1.2G \\ set 1 boot on \\ set 1 bios_grub on mkfs.ext4 -L root-fs /dev/vdb2 @@ -676,7 +676,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts ls -l /run/current-system/gc-roots parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 1G \\ + mkpart primary ext2 3M 1.2G \\ set 1 boot on \\ set 1 bios_grub on echo -n thepassphrase | \\ -- cgit v1.2.3 From c16c119d0a7894c42bbe816ec381a0f458f26e6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 4 Dec 2018 22:55:46 +0100 Subject: gnu: quilt: Use shorter file names for patches. We were reaching the 99-character limit of POSIX tar. * gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch: Rename to... * gnu/packages/patches/quilt-getopt-nondigit-param.patch: ... this. * gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch: Rename to... * gnu/packages/patches/quilt-getopt-second-separator.patch: ... this. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/patchutils.scm (quilt)[source](patches): Likewise. --- gnu/local.mk | 4 +- ...pat-getopt-fix-option-with-nondigit-param.patch | 45 ----------------- .../quilt-compat-getopt-fix-second-separator.patch | 58 ---------------------- .../patches/quilt-getopt-nondigit-param.patch | 45 +++++++++++++++++ .../patches/quilt-getopt-second-separator.patch | 58 ++++++++++++++++++++++ gnu/packages/patchutils.scm | 4 +- 6 files changed, 107 insertions(+), 107 deletions(-) delete mode 100644 gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch delete mode 100644 gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch create mode 100644 gnu/packages/patches/quilt-getopt-nondigit-param.patch create mode 100644 gnu/packages/patches/quilt-getopt-second-separator.patch diff --git a/gnu/local.mk b/gnu/local.mk index 53a3547559..d2407bb80e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1119,8 +1119,8 @@ dist_patch_DATA = \ %D%/packages/patches/quagga-reproducible-build.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/quilt-test-fix-regex.patch \ - %D%/packages/patches/quilt-compat-getopt-fix-second-separator.patch \ - %D%/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch \ + %D%/packages/patches/quilt-getopt-nondigit-param.patch \ + %D%/packages/patches/quilt-getopt-second-separator.patch \ %D%/packages/patches/qtwebkit-pbutils-include.patch \ %D%/packages/patches/randomjungle-disable-static-build.patch \ %D%/packages/patches/rapicorn-isnan.patch \ diff --git a/gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch b/gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch deleted file mode 100644 index 6bbec67e75..0000000000 --- a/gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Jean Delvare -Subject: compat/getopt: Allow non-digit parameter embedded in short option - -The compatibility getopt script allows only digit parameters to be -embedded in short options. Util-linux's getopt implementation does -not have such a restriction and allows any parameter to be embedded -in short options. As a consequence, using the compatibility getopt -script would choke for example on "-pab", which is a legal option -of the "quilt refresh" command. - -Remove the limitation on digits so that the compatibility getopt -script allows what util-linux allows. This fixes the second half -of bug #54772: -https://savannah.nongnu.org/bugs/index.php?54772 - -As a side note, this feature of the compatibility script was broken -anyway, as it would output the digits in reverse order. - -Signed-off-by: Jean Delvare ---- - compat/getopt.in | 13 ++++--------- - 1 file changed, 4 insertions(+), 9 deletions(-) - ---- quilt.orig/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200 -+++ quilt/compat/getopt.in 2018-10-03 16:12:17.624841732 +0200 -@@ -108,15 +108,10 @@ foreach my $word (@words) { - if (scalar(@letters) == 0) { - $need_param = $letter; - } else { -- # short options can have numerical args -- # embedded in the short option list: -UO -- die "unexpected character after option $letter" -- if ($letters[$#letters] !~ /[0-9]/); -- my @digits; -- while (scalar(@letters) && ($letters[$#letters] =~ /[0-9]/)) { -- push @digits, pop @letters; -- } -- push @options, quote_word(join('', reverse @digits)); -+ # short options can have args -+ # embedded in the short option list -+ push @options, quote_word(join('', reverse @letters)); -+ @letters = (); - } - } - } diff --git a/gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch b/gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch deleted file mode 100644 index cde2c8d41c..0000000000 --- a/gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch +++ /dev/null @@ -1,58 +0,0 @@ -From: Jean Delvare -Subject: compat/getopt: Handle a second separator - -getopt can be passed 2 '--' separators. The first one tells that -getopt options are over and target program options start. The second -one tells that the target program's options are over and following -arguments should be treated as non-options even if they look like -options. - -This second separator was not handled, causing the compatibility -getopt script to treat the following arguments as options, eventually -failing one way or another. - -Properly detect and handle the second separator. This fixes the first -half of bug #54772: -https://savannah.nongnu.org/bugs/index.php?54772 - -Signed-off-by: Jean Delvare ---- - compat/getopt.in | 13 ++++++++++--- - 1 file changed, 10 insertions(+), 3 deletions(-) - ---- quilt.orig/compat/getopt.in 2018-10-03 15:23:21.147620172 +0200 -+++ quilt/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200 -@@ -8,12 +8,12 @@ - - use strict; - --my $opts; -+my $opts = ''; - my @words; - my $found_sep = 0; - - foreach my $arg (@ARGV) { -- if ($arg eq '--') { -+ if (!$found_sep && $arg eq '--') { - $found_sep = 1; - } - else { -@@ -62,10 +62,17 @@ sub quote_word - return "'$word'"; - } - -+# there can be a second separator, to inhibit processing following arguments -+# as options -+$found_sep = 0; - foreach my $word (@words) { -+ if ($word eq '--') { -+ $found_sep = 1; -+ next; -+ } - - # allow '-' to be an option value -- if (!$need_param && $word !~ /^-./) { -+ if ($found_sep || (!$need_param && $word !~ /^-./)) { - push @barewords, quote_word($word); - next; - } diff --git a/gnu/packages/patches/quilt-getopt-nondigit-param.patch b/gnu/packages/patches/quilt-getopt-nondigit-param.patch new file mode 100644 index 0000000000..6bbec67e75 --- /dev/null +++ b/gnu/packages/patches/quilt-getopt-nondigit-param.patch @@ -0,0 +1,45 @@ +From: Jean Delvare +Subject: compat/getopt: Allow non-digit parameter embedded in short option + +The compatibility getopt script allows only digit parameters to be +embedded in short options. Util-linux's getopt implementation does +not have such a restriction and allows any parameter to be embedded +in short options. As a consequence, using the compatibility getopt +script would choke for example on "-pab", which is a legal option +of the "quilt refresh" command. + +Remove the limitation on digits so that the compatibility getopt +script allows what util-linux allows. This fixes the second half +of bug #54772: +https://savannah.nongnu.org/bugs/index.php?54772 + +As a side note, this feature of the compatibility script was broken +anyway, as it would output the digits in reverse order. + +Signed-off-by: Jean Delvare +--- + compat/getopt.in | 13 ++++--------- + 1 file changed, 4 insertions(+), 9 deletions(-) + +--- quilt.orig/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200 ++++ quilt/compat/getopt.in 2018-10-03 16:12:17.624841732 +0200 +@@ -108,15 +108,10 @@ foreach my $word (@words) { + if (scalar(@letters) == 0) { + $need_param = $letter; + } else { +- # short options can have numerical args +- # embedded in the short option list: -UO +- die "unexpected character after option $letter" +- if ($letters[$#letters] !~ /[0-9]/); +- my @digits; +- while (scalar(@letters) && ($letters[$#letters] =~ /[0-9]/)) { +- push @digits, pop @letters; +- } +- push @options, quote_word(join('', reverse @digits)); ++ # short options can have args ++ # embedded in the short option list ++ push @options, quote_word(join('', reverse @letters)); ++ @letters = (); + } + } + } diff --git a/gnu/packages/patches/quilt-getopt-second-separator.patch b/gnu/packages/patches/quilt-getopt-second-separator.patch new file mode 100644 index 0000000000..cde2c8d41c --- /dev/null +++ b/gnu/packages/patches/quilt-getopt-second-separator.patch @@ -0,0 +1,58 @@ +From: Jean Delvare +Subject: compat/getopt: Handle a second separator + +getopt can be passed 2 '--' separators. The first one tells that +getopt options are over and target program options start. The second +one tells that the target program's options are over and following +arguments should be treated as non-options even if they look like +options. + +This second separator was not handled, causing the compatibility +getopt script to treat the following arguments as options, eventually +failing one way or another. + +Properly detect and handle the second separator. This fixes the first +half of bug #54772: +https://savannah.nongnu.org/bugs/index.php?54772 + +Signed-off-by: Jean Delvare +--- + compat/getopt.in | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +--- quilt.orig/compat/getopt.in 2018-10-03 15:23:21.147620172 +0200 ++++ quilt/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200 +@@ -8,12 +8,12 @@ + + use strict; + +-my $opts; ++my $opts = ''; + my @words; + my $found_sep = 0; + + foreach my $arg (@ARGV) { +- if ($arg eq '--') { ++ if (!$found_sep && $arg eq '--') { + $found_sep = 1; + } + else { +@@ -62,10 +62,17 @@ sub quote_word + return "'$word'"; + } + ++# there can be a second separator, to inhibit processing following arguments ++# as options ++$found_sep = 0; + foreach my $word (@words) { ++ if ($word eq '--') { ++ $found_sep = 1; ++ next; ++ } + + # allow '-' to be an option value +- if (!$need_param && $word !~ /^-./) { ++ if ($found_sep || (!$need_param && $word !~ /^-./)) { + push @barewords, quote_word($word); + next; + } diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index fa5ad62e44..b655399345 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -102,8 +102,8 @@ listing the files modified by a patch.") (base32 "06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn")) (patches (search-patches "quilt-test-fix-regex.patch" - "quilt-compat-getopt-fix-second-separator.patch" - "quilt-compat-getopt-fix-option-with-nondigit-param.patch")))) + "quilt-getopt-second-separator.patch" + "quilt-getopt-nondigit-param.patch")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gnu-gettext))) -- cgit v1.2.3 From bd3e1f169481cc528be96241d73f87791206ddb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 4 Dec 2018 23:47:54 +0100 Subject: doc: Update "Limitations". * doc/guix.texi (Limitations): Update package count. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index a08a999ca0..4ef2601579 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9069,7 +9069,7 @@ More and more system services are provided (@pxref{Services}), but some may be missing. @item -More than 7,500 packages are available, but you might +More than 8,500 packages are available, but you might occasionally find that a useful package is missing. @item -- cgit v1.2.3 From 273cce9875a1deba2b6669099e69824db55c9622 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 4 Dec 2018 22:35:14 +0100 Subject: Update NEWS. --- NEWS | 49 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 44 insertions(+), 5 deletions(-) diff --git a/NEWS b/NEWS index 11a649a6da..df3ccefd1a 100644 --- a/NEWS +++ b/NEWS @@ -11,28 +11,38 @@ Copyright © 2016, 2017, 2018 Ricardo Wurmus Please send Guix bug reports to bug-guix@gnu.org. -* Changes since 0.15.0 +* Changes in 0.16.0 (since 0.15.0) ** Package management +*** Default substitute URL changed to https://ci.guix.info *** ‘guix pull -l’ lists new and upgraded packages *** ‘guix pull’ now supports channels via ~/.config/guix/channels.scm *** New ‘--profile’ or ‘-p’ option for ‘guix pull’ +*** ~/.config/guix/current is now a symlink to /var/guix/profiles *** New ‘guix describe’ command *** ‘guix package’ no longer shows build logs by default *** ‘guix’ commands now produce colored output by default +*** User interface now reports grafts separately *** Manifests can now refer to arbitrary Guix commits using “inferiors” +*** New ‘--with-branch’ and ‘--with-commit’ package transformation options +*** ‘guix build -f’ now accepts any kind of “file-like object” +*** Git checkouts may now be fetched from Software Heritage +*** New ‘guix repl’ command for use by inferiors *** New ‘guix processes’ command *** ‘guix pack’ now honors ‘--localstatedir’ for all its backends +*** New ‘opam’ importer for ‘guix import’ *** ‘guix import pypi’ has a new ‘--recursive’ option *** ‘guix import hackage’ has a new ‘--recursive’ option *** ‘guix import stackage’ has a new ‘--recursive’ option The short option for ‘--lts-version’ is now ‘-l’ (used to be ‘-r’). *** ‘guix refresh’ now stores upstream keys in ~/.config/guix/upstream *** Guix now depends on Guile-Gcrypt +*** Guix now requires Guile-JSON ** Distribution +*** Rust is now bootstrapped from mrustc *** The GNU Shepherd was upgraded to 0.5.0 *** ‘guix system reconfigure’ now loads Shepherd service replacements *** ‘herd schedule mcron’ now displays mcron’s job schedule @@ -40,21 +50,50 @@ The short option for ‘--lts-version’ is now ‘-l’ (used to be ‘-r’). *** ‘herd invalidate nscd TABLE’ instructs nscd to invalidate TABLE *** New services -gitolite, iptables, pcscd, prometheus-node-exporter, varnish +ddclient, gitolite, iptables, pcscd, prometheus-node-exporter, varnish + +*** XXX new packages +*** XXX package updates ** Programming interfaces -*** New (guix channels) module -*** New (guix inferior) module -*** New (guix status) module +*** New (guix channels) module, see “Channels” in the manual +*** New (guix inferior) module, see “Inferiors” in the manual +*** New (guix describe) module, used by ‘guix describe’ +*** New (guix status) module, for build progress reporting *** ‘packages->manifest’ now accepts inferior packages *** New build systems: ‘clojure’, ‘guile’ +*** New ‘git-checkout’ record constructor in (guix git) *** Shepherd services can now declare custom actions *** More of the (gnu system …) APIs are now non-monadic *** New ‘add-file-tree-to-store’ procedure in (guix store) +*** New (guix swh) module to access Software Heritage +*** New (guix build debug-link) module, for ELF ‘.gnu_debuglink’ sections ** Noteworthy bug fixes +*** Fix GCC crashes caused by a patch of ours () +*** ‘guix import hackage’ now supports ‘custom-setup’ field + () +*** ‘guix-daemon’ taken from ‘guix pull’ looks up ‘guix’ in the right place + () +*** Try several file names when looking up kernel modules + () +*** ‘file-system-*’ services are now always started after ‘udev’ + () +*** Racket now ignores bytecode checksums for files in the store + () +*** Grafting now updates CRCs in ‘.gnu_debuglink’ ELF sections + () +*** UUID computation for VMs is now deterministic () +*** ‘git-predicate’ from (guix git) now uses Guile-Git, which fixes corner cases + () +*** (guix store database) registers each store item only once + () +*** The File > Open dialog in LibreOffice no longer triggers a crash + () +*** Account home directory is always honored () + ** Native language support *** The manual is now partially translated into German, in addition to French -- cgit v1.2.3 From e3c03952be99419b958e98e5934fb3b86f71165d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 4 Dec 2018 23:49:56 +0100 Subject: maint: update-NEWS: Don't produce full package lists. The lists of new and upgraded packages in 'NEWS' had become way too long and redundant with what 'guix pull' reports. * build-aux/update-NEWS.scm (write-packages-added): Don't print ADDED. (write-packages-updates)[important, table, latest, noteworthy]: New variables. Print NOTEWORTHY rather than all of UPGRADED. (main): Print PREVIOUS-VERSION and NEW-VERSION. --- build-aux/update-NEWS.scm | 62 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 47 insertions(+), 15 deletions(-) diff --git a/build-aux/update-NEWS.scm b/build-aux/update-NEWS.scm index a9dffef1d2..bf5f0e141b 100644 --- a/build-aux/update-NEWS.scm +++ b/build-aux/update-NEWS.scm @@ -30,6 +30,7 @@ (ice-9 match) (ice-9 rdelim) (ice-9 regex) + (ice-9 vlist) (ice-9 pretty-print)) (define %header-rx @@ -98,31 +99,60 @@ paragraph." (lambda (match port) (let ((stars (match:substring match 1))) (format port - "~a ~a new packages~%~%~a~%~%" - stars (length added) - (enumeration->paragraph added))))))))) + "~a ~a new packages~%~%" + stars (length added))))))))) (define (write-packages-updates news-file old new) "Write to NEWS-FILE the list of packages upgraded between OLD and NEW." - (let ((upgraded (filter-map (match-lambda - ((package . new-version) - (match (assoc package old) - ((_ . old-version) - (and (version>? new-version old-version) - (string-append package "@" - new-version))) - (_ #f)))) - new))) + (define important + '("gcc" "glibc" "binutils" "gdb" ;toolchain + "shepherd" "linux-libre" "xorg-server" "cups" ;OS + "gnome" "xfce" "enlightenment" "lxde" "mate" ;desktop env. + "guile" "bash" "python" "python2" "perl" ;languages + "ghc" "rust" "go" "julia" "r" "ocaml" + "icedtea" "openjdk" "clojure" "sbcl" "racket" + "emacs" "gimp" "inkscape" "libreoffice" ;applications + "octave" "icecat" "gnupg")) + + (let* ((table (fold (lambda (package table) + (match package + ((name . version) + (vhash-cons name version table)))) + vlist-null + new)) + (latest (lambda (name) + (let ((versions (vhash-fold* cons '() name table))) + (match (sort versions version>?) + ((latest . _) latest))))) + (upgraded (filter-map (match-lambda + ((package . new-version) + (match (assoc package old) + ((_ . old-version) + (and (string=? new-version + (latest package)) + (version>? new-version old-version) + (cons package new-version))) + (_ #f)))) + new)) + (noteworthy (filter (match-lambda + ((package . version) + (member package important))) + upgraded))) (with-atomic-file-replacement news-file (lambda (input output) (rewrite-org-section input output (make-regexp "^(\\*+) (.*) package updates") (lambda (match port) - (let ((stars (match:substring match 1))) + (let ((stars (match:substring match 1)) + (lst (map (match-lambda + ((package . version) + (string-append package " " + version))) + noteworthy))) (format port - "~a ~a package updates~%~%~a~%~%" + "~a ~a package updates~%~%Noteworthy updates:~%~a~%~%" stars (length upgraded) - (enumeration->paragraph upgraded))))))))) + (enumeration->paragraph lst))))))))) (define (main . args) @@ -138,6 +168,8 @@ paragraph." (let-values (((previous-version new-version) (call-with-input-file news-file NEWS->versions))) + (format (current-error-port) "Updating NEWS for ~a to ~a...~%" + previous-version new-version) (let* ((old (call-with-input-file (package-file previous-version) read)) (new (fold-packages (lambda (p r) -- cgit v1.2.3 From eeedb094ec93ac63e92f733165a3e6883f6002ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 5 Dec 2018 00:11:22 +0100 Subject: Update NEWS. --- NEWS | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index df3ccefd1a..b78c2c6a71 100644 --- a/NEWS +++ b/NEWS @@ -52,8 +52,17 @@ The short option for ‘--lts-version’ is now ‘-l’ (used to be ‘-r’). ddclient, gitolite, iptables, pcscd, prometheus-node-exporter, varnish -*** XXX new packages -*** XXX package updates +*** 985 new packages + +*** 1945 package updates + +Noteworthy updates: +bash 4.4.23, binutils 2.31.1, cups 2.2.8, enlightenment 0.22.4, gcc 8.2.0, +gdb 8.2, ghc 8.4.3, gimp 2.10.6, glibc 2.28, gnupg 2.2.11, go 1.11.1, +guile 2.2.4, icecat 60.3.0-gnu1, icedtea 3.7.0, libreoffice 6.1.3.2, +linux-libre 4.19.6, ocaml 4.07.1, octave 4.4.1, perl 5.28.0, +python2 2.7.15, python 3.7.0, racket 7.0, rust 1.28.0, r 3.5.1, +sbcl 1.4.13, shepherd 0.5.0, xorg-server 1.20.3 ** Programming interfaces -- cgit v1.2.3 From 970ebdae8cef6488c196ed899a774cda54da3588 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 5 Dec 2018 16:16:05 +0100 Subject: services: guix-daemon: Fix authorization of multiple keys. Previously, the 'unless (file-exists? "/etc/guix/acl")' guard would mean that only the first key in the list would get registered since were were generating one registration snippet per key. This fixes that. * gnu/services/base.scm (hydra-key-authorization): Change to be a 'for-each' loop iterating on #$KEYS. --- gnu/services/base.scm | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index cee9898d79..89e39f7690 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1499,26 +1499,27 @@ starting at FIRST-UID, and under GID." 1+ 1)) -(define (hydra-key-authorization key guix) - "Return a gexp with code to register KEY, a file containing a 'guix archive' -public key, with GUIX." +(define (hydra-key-authorization keys guix) + "Return a gexp with code to register KEYS, a list of files containing 'guix +archive' public keys, with GUIX." #~(unless (file-exists? "/etc/guix/acl") - (let ((pid (primitive-fork))) - (case pid - ((0) - (let* ((key #$key) - (port (open-file key "r0b"))) - (format #t "registering public key '~a'...~%" key) - (close-port (current-input-port)) - (dup port 0) - (execl #$(file-append guix "/bin/guix") - "guix" "archive" "--authorize") - (exit 1))) - (else - (let ((status (cdr (waitpid pid)))) - (unless (zero? status) - (format (current-error-port) "warning: \ -failed to register public key '~a': ~a~%" key status)))))))) + (for-each (lambda (key) + (let ((pid (primitive-fork))) + (case pid + ((0) + (let* ((port (open-file key "r0b"))) + (format #t "registering public key '~a'...~%" key) + (close-port (current-input-port)) + (dup port 0) + (execl #$(file-append guix "/bin/guix") + "guix" "archive" "--authorize") + (primitive-exit 1))) + (else + (let ((status (cdr (waitpid pid)))) + (unless (zero? status) + (format (current-error-port) "warning: \ +failed to register public key '~a': ~a~%" key status))))))) + '(#$@keys)))) (define %default-authorized-guix-keys ;; List of authorized substitute keys. @@ -1632,8 +1633,7 @@ failed to register public key '~a': ~a~%" key status)))))))) ;; Optionally authorize substitute server keys. (if authorize-key? - #~(begin - #$@(map (cut hydra-key-authorization <> guix) keys)) + (hydra-key-authorization keys guix) #~#f)))) (define* (references-file item #:optional (name "references")) -- cgit v1.2.3 From 4a0b87f0ec5b6c2dcf82b372dd20ca7ea6acdd9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 5 Dec 2018 16:19:34 +0100 Subject: guix-install.sh: Use the "ci.guix.info.pub" file name for clarity. * etc/guix-install.sh (sys_authorize_build_farms): Use the "ci.guix.info.pub" file name rather "berlin.guixsd.org.pub". --- etc/guix-install.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 6a01e59723..f0bfc932bd 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -361,8 +361,8 @@ sys_authorize_build_farms() case $yn in [Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/hydra.gnu.org.pub" && _msg "${PAS}Authorized public key for hydra.gnu.org"; - guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/berlin.guixsd.org.pub" && - _msg "${PAS}Authorized public key for berlin.guixsd.org"; + guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/ci.guix.info.pub" && + _msg "${PAS}Authorized public key for ci.guix.info"; break;; [Nn]*) _msg "${INF}Skipped authorizing build farm public keys" break;; -- cgit v1.2.3 From c845323d4b0a31ce5241a9d98187e1eeed43f71c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 5 Dec 2018 16:30:58 +0100 Subject: gnu: guix: Update to 0.16.0. --- gnu/packages/package-management.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index c5ba65a863..fa5e0af262 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -101,9 +101,9 @@ ;; Latest version of Guix, which may or may not correspond to a release. ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. - (let ((version "0.15.0") - (commit "71a78ba65b00ad1f27086a3dcdded7dc4326ade1") - (revision 8)) + (let ((version "0.16.0") + (commit "4a0b87f0ec5b6c2dcf82b372dd20ca7ea6acdd9c") + (revision 0)) (package (name "guix") @@ -119,7 +119,7 @@ (commit commit))) (sha256 (base32 - "0isagzccfxjqrc38wamknvh0jzv1pjh0wq5baj9jzwl07xkrc0hc")) + "0lb359byzsnjk558xlgdpv8c5pb7n3b6dhm8rw9nfd9b8yzj589g")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From 676c3adc14f63df0f7a549e518ac87481c0f3e37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 5 Dec 2018 18:30:16 +0100 Subject: gnu: guix: Update to c845323. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index fa5e0af262..aae8c6a989 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -102,8 +102,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.16.0") - (commit "4a0b87f0ec5b6c2dcf82b372dd20ca7ea6acdd9c") - (revision 0)) + (commit "c845323d4b0a31ce5241a9d98187e1eeed43f71c") + (revision 1)) (package (name "guix") @@ -119,7 +119,7 @@ (commit commit))) (sha256 (base32 - "0lb359byzsnjk558xlgdpv8c5pb7n3b6dhm8rw9nfd9b8yzj589g")) + "0i431d5p9ckr7kxfiwpp94wgjgqn6mgyypf0smw64bk635fn6ycr")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From 178be030c0e4fdeac5e1c968b5c99d84bb4691db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 6 Dec 2018 17:22:24 +0100 Subject: vm: Add padding in the ISO image. Fixes . Thanks to Ricardo Wurmus and Thomas Schmitt for their suggestions! * gnu/build/vm.scm (make-iso9660-image): Pass "-padding 10m" to xorriso. --- gnu/build/vm.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 746808515f..83ad489cc7 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -477,6 +477,11 @@ GRUB configuration and OS-DRV as the stuff in it." "mnt=/tmp/root/mnt" "-path-list" "-" "--" + + ;; XXX: Add padding to avoid I/O errors on i686: + ;; . + "-padding" "10m" + "-volid" (string-upcase volume-id) (if volume-uuid `("-volume_date" "uuid" -- cgit v1.2.3