gnu: offlineimap: Update to 6.7.0.
* gnu/packages/mail.scm (offlineimap): Update to 6.7.0.
substitute: Honor client-provided empty URL list.
Before that, 'guix build --substitute-urls=""' would lead to using the
daemon's own URL list instead of the empty list. The 'or*' hack, which
is to blame, had become unnecessary since commit
fb4bf72be3fbc23bca35ba4b842b7e1517ef0e3a.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/scripts/substitute.scm (or*): Remove.
(%cache-urls): Use 'or' instead of 'or*'.
* tests/store.scm ("substitute query, alternating URLs"): Add test with
empty URL list.
* doc/guix.texi (Common Build Options): Mention the empty string.
build: Write emacs-autoloads.el to $(builddir).
* emacs.am ($(AUTOLOADS)): Write to $(builddir), not $(srcdir).
substitute: Honor the 'max-age' of 'Cache-Control' headers.
This allows substitute servers to tell 'guix substitute' how long they
can cache narinfo lookups.
* guix/scripts/substitute.scm (cache-narinfo!): Add 'ttl' parameter.
[cache-entry]: Honor it.
(fetch-narinfos)[handle-narinfo-response]: Check the 'Cache-Control'
header of RESPONSE and pass its 'max-age' value to 'cache-narinfo!'.
substitute: Make room for a 'ttl' field in cached entries.
* guix/scripts/substitute.scm (cached-narinfo): Expect 'narinfo' sexp
version 2 with a 'ttl' field.
(cache-narinfo!)[cache-entry]: Produce 'narinfo' sexp version 2 with a
'ttl' field.
(remove-expired-cached-narinfos)[expired?]: Read 'narinfo' sexp version 2.
gnu: cm: Update to 0.3.
* gnu/packages/algebra.scm (cm): Update to 0.3.
[license]: Change to gpl3+.
build: Default to "https://mirror.hydra.gnu.org/" for substitutes.
* config-daemon.ac: Check for (gnutls) and define 'GUIX_SUBSTITUTE_URLS'.
* nix/nix-daemon/guix-daemon.cc (main): Use GUIX_SUBSTITUTE_URLS.
* guix/store.scm (%default-substitute-urls): Use 'https' when (gnutls)
is available.
* doc/guix.texi (Binary Installation): Mention mirrors
(Invoking guix-daemon): Mention mirror.hydra.gnu.org.
(Substitutes): Mention mirrors.
(Invoking guix archive): Show https URLs.
http-client: No 'setvbuf' for non-file ports.
* guix/http-client.scm (http-fetch): Do not call 'setvbuf' on non-file
ports.
gnu: Add r-dnacopy.
* gnu/packages/bioinformatics.scm (r-dnacopy): New variable.
gnu: Add codingquarry.
* gnu/packages/bioinformatics.scm (codingquarry): New variable.
Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: Add idle3-tools.
* gnu/packages/disk.scm (idle3-tools): New variable.
Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: neon: Update to 0.30.1.
* gnu/packages/version-control.scm (neon): Update to 0.30.1.
gnu: mercurial: Update to 3.7.2.
* gnu/packages/version-control.scm (mercurial): Update to 3.7.2.
[source]: Update to mercurial-scm.org.
[home-page]: Same.
gnu: Add gdk-pixbuf+svg.
* gnu/packages/gtk.scm (gdk-pixbuf+svg): New variable.
gnu: git: Update to 2.7.3 [unspecified security fixes].
* gnu/packages/version-control.scm (git): Update to 2.7.3.
(git-manpages)[source]: Update hash.
gnu: services: Add GNOME and XFCE desktop services.
* gnu/services/desktop.scm (package-direct-input-selector): New
function.
(<gnome-desktop-configuration>, gnome-desktop-service-type)
(<xfce-desktop-configuration>, xfce-desktop-service-type): New
variables.
(gnome-desktop-service, xfce-desktop-service): New public variables.
* doc/guix.texi (Desktop Services): Document new variables.
gnu: xfce: Add xfce4-power-manager.
* gnu/packages/xfce.scm (xfce)[propagated-inputs]: Add xfce4-power-manager.
gnu: Add xfce4-power-manager.
* gnu/packages/xfce.scm (xfce4-power-manager): New variable.
Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: linux-libre: Update to 4.5, while preserving linux-libre-4.4.
* gnu/packages/linux-libre-x86_64.conf: Rename to ...
* gnu/packages/linux-libre-4.4-x86_64.conf: ... this.
* gnu/packages/linux-libre-i686.conf: Rename to ...
* gnu/packages/linux-libre-4.4-i686.conf: ... this.
* gnu/packages/linux-libre-4.5-i686.conf,
gnu/packages/linux-libre-4.5-x86_64.conf: New files.
* Makefile.am (KCONFIGS): Update accordingly.
* gnu/packages/linux.scm (linux-libre): Update to 4.5.
(linux-libre-4.4): New variable.
doc: Clarify and consolidate modify-services documentation.
* doc/guix.texi ("Using the Configuration System"): Move the example...
("Service Reference"): ...to here, and clarify more.
* gnu/services.scm (modify-services): Update docstring to mention the
return type.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>