gnu: python: Set SOURCE_DATE_EPOCH to 1 instead of 0. * gnu/packages/python.scm (python-2)[arguments]: Set SOURCE_DATE_EPOCH to 1 to match what the daemon does. * guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Likewise.
gnu: python-2: Honor 'SOURCE_DATE_EPOCH'. * gnu/packages/patches/python-2.7-source-date-epoch.patch: New file. * gnu/packages/python.scm (python-2)[source]: Use it. [arguments]: Set SOURCE_DATE_EPOCH in 'patch-lib-shells' phase. * guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): New procedure. (%standard-phases): Add it. * gnu-system.am (dist_patch_DATA): Add patch.
graft: Graft files in parallel. * guix/build/graft.scm (rewrite-directory): Use 'n-par-for-each' instead of 'for-each'.
graft: Graft files in a deterministic order. * guix/build/graft.scm (rewrite-directory)[rewrite-leaf]: Change to take a single parameter. Add call to 'lstat'. Factorize result of 'destination'. Use 'find-files' instead of 'file-system-fold'.
download: Always use AI_ADDRCONFIG when resolving host names. * guix/build/download.scm (open-socket-for-uri): Always pass AI_ADDRCONFIG to 'getaddrinfo' as recommended in the fine Guile manual. * guix/ftp-client.scm (ftp-open): Ditto.
download: Add timeout parameter for connections. * guix/build/download.scm (ensure-uri): New procedure. (current-http-proxy): New variable. (open-socket-for-uri): Copy from Guile commit aaea5b2, but add #:timeout parameter and use 'connect*' instead of 'connect'. (open-connection-for-uri): Add #:timeout parameter and pass it to 'open-socket-for-uri'.
Merge branch 'master' into dbus-update
build-system/haskell: CONFIG_SHELL env variable. For Cabal packages with "build-type: Configure", a configure shell script is run to set up build parameters. These scripts need the CONFIG_SHELL environment variable to be set to function properly. * guix/build/haskell-build-system.scm (configure): Set CONFIG_SHELL if necessary.
Merge branch 'master' into dbus-update
syscalls: Fix ABI mismatch for 'clone'. Fixes <http://bugs.gnu.org/21694>. * guix/build/syscalls.scm (clone): Change 'syscall' parameter types to LONG, UNSIGNED-LONG, or '*; make sure it has 6 parameters. Adjust caller accordingly.
Merge branch 'core-updates'
Merge branch 'master' into core-updates
Use "normalized codesets" everywhere. In other words, change "xx_YY.UTF-8" to "xx_YY.utf8". * guix/profiles.scm (ca-certificate-bundle): Use "en_US.utf8" instead of "en_US.UTF-8". * guix/packages.scm (patch-and-repack): Likewise. * guix/build/gnu-build-system.scm (install-locale): Likewise. * guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Likewise. * gnu/packages/python.scm (python-ipython): Likewise. * gnu/packages/gawk.scm (gawk): Likewise. * build-aux/hydra/demo-os.scm: Likewise. * gnu/packages/guile.scm (guile-ncurses)[arguments]: Remove 'change-locale' phase.
utils: Add 'every*'. * guix/build/gnu-build-system.scm (every*): Move to... * guix/build/utils.scm (every*): ... here. New procedure.
download: Check whether HORIZONTAL ELLIPSIS can be encoded. * guix/build/download.scm (ellipsis): New procedure. (store-path-abbreviation): Use it.
Merge branch 'core-updates'
Merge branch 'master' into core-updates
download: Don't abbreviate things that are not store items. Fixes a regression introduced in a8be7b9a. * guix/build/download.scm (store-path-abbreviation): Return STORE-PATH if it's not an actual store path. Fixes an out-of-range exception when running tests/substitute.scm and tests/store.scm.
download: Fix some minor progress-logging regressions. * guix/build/download.scm (string-pad-middle): Allow resulting padded string to overflow. (store-url-abbreviation): Remove unnecessary procedure. (progress-proc): Use BASENAME as default for parameter 'abbreviation'. (url-fetch): Display extra newlines for readability.
emacs-build-system: Fix 'package-name-version->elpa-name-version'. Fixes a regression introduced in b7c7c03eb5e37fc3455e4e17b0898ffc4bca29c3. * guix/build/emacs-build-system.scm (package-name-version->elpa-name-version): Remove unused 'name' binding. Do not abuse 'strip-store-file-name' to remove the "emacs-" prefix, which worked before b7c7c03eb5 but not after.