summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2015-03-17gexp: Remove special meaning of forms (PACKAGE OUTPUT) in ungexp....* guix/gexp.scm (gexp-inputs)[add-reference-inputs]: Remove clause for inputs of the form (PACKAGE OUTPUT). (gexp->sexp)[reference->sexp]: Likewise. * tests/gexp.scm ("input list splicing"): Change 'list' to 'gexp-input' for glibc:debug. ("text-file*"): Likewise for %bootstrap-guile:out. ("input list splicing + gexp-input + ungexp-native-splicing"): Remove, now redundant. Ludovic Courtès
2015-03-17profiles: Use 'gexp-input' instead of two-element lists....* guix/profiles.scm (package->manifest-entry): Use 'gexp-input' instead of two-element lists to denote specific package outputs. (manifest-inputs): Likewise. (profile-derivation)[info-dir]: Likewise. Ludovic Courtès
2015-03-17gexp: Export 'gexp-input' constructor....* guix/gexp.scm (<gexp-input>)[gexp-input]: Rename to... [%gexp-input]: ... this. Adjust callers accordingly. (gexp-input): New procedure. (gexp-inputs)[add-reference-inputs]: When the input is a list, check whether each item is already 'gexp-input?' and to not rewrap those. (gexp-outputs)[add-reference-output]: Likewise. (gexp->sexp): Likewise. * tests/gexp.scm ("input list splicing + gexp-input + ungexp-native-splicing"): New test. Ludovic Courtès
2015-03-17gexp: Add <gexp-input>....* guix/gexp.scm (<gexp-input>): New record type. (gexp-inputs)[add-reference-inputs]: Adjust clauses to expect <gexp-input> objects. (gexp-outputs)[add-reference-output]: Likewise. (gexp->sexp)[reference->sexp]: Likewise. (canonicalize-reference): Remove. (gexp)[escape->ref]: Use 'gexp-input' for all the references. Remove use of 'canonicalize-reference'. Ludovic Courtès
2015-03-17gexp: Rename <output-ref> to <gexp-output>....* guix/gexp.scm (<output-ref>): Rename to... (<gexp-output>): ... this. Adjust constructor/accessor names and users accordingly. Ludovic Courtès
2015-03-17licenses: Add the Ms-PL....* guix/licenses.scm (ms-pl): New variable. Ludovic Courtès
2015-03-16scripts: environment: Improve error messages....* guix/scripts/environment.scm (guix-environment): Wrap procedure body with error handling form. David Thompson
2015-03-14licenses: Rename 'bsd-style' to 'non-copyleft'....* guix/licenses.scm (bsd-style): Rename to... (non-copyleft): ... this. Clarify docstring. (bsd-style): Introduce as an alias for 'non-copyleft'. Ludovic Courtès
2015-03-14gnu: cmake: Add CMAKE_PREFIX_PATH as a native search path, and drop...CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH from the cmake build system. * gnu/packages/cmake.scm (cmake)[native-search-paths]: New field. * guix/build/cmake-build-system.scm (configure): Drop environment variables CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH. Andreas Enge
2015-03-12build-system/python: Delay evaluation of the 'python2' package....This fixes a bug whereby uses of 'package-with-python2' at the top-level in modules other than (gnu packages python) could lead to an "Unbound variable: python2" error due to the circular references. Reported by Tomáš Čech. * guix/build-system/python.scm (package-with-explicit-python)[arguments]: Check whether PYTHON is a promise, and force it if it is. (package-with-python2): Wrap 'default-python2' call in 'delay'. Ludovic Courtès
2015-03-05lint: Add tests for the 'source' checker....* guix/scripts/lint.scm (check-source): Export. * tests/lint.scm (%null-sha256): New procedure. ("source: 200", "source: 404"): New tests. Ludovic Courtès
2015-03-05store: Attempt to decode build logs as UTF-8....* guix/serialization.scm (read-maybe-utf8-string): New procedure. * guix/store.scm (process-stderr): Use it for the build log and errors. * tests/store.scm ("current-build-output-port, UTF-8", "current-build-output-port, UTF-8 + garbage"): New tests. Ludovic Courtès
2015-03-05serialization: Factorize 'read-byte-string'....* guix/serialization.scm (read-byte-string): New procedure. (read-string, read-latin1-string): Use it. Ludovic Courtès
2015-03-04tests: Remove dependency on 'glibc-utf8-locales' for profile tests....This fixes a regression introduced in commit 536c3ee. * guix/profiles.scm (ca-certificate-bundle): When MANIFEST is empty, make a trivial derivation. * guix/scripts/package.scm (guix-package)[process-actions]: Pass #:ca-certificate-bundle? to 'profile-generation'. * tests/packages.scm ("--search-paths with pattern"): Likewise. * tests/profiles.scm ("profile-derivation"): Likewise. Ludovic Courtès
2015-03-04Merge branch 'core-updates'.Ludovic Courtès
2015-03-03http-client: Monkey-patch 'make-chunked-input-port' on Guile <= 2.0.11....Fixes <http://bugs.gnu.org/19976>. * guix/http-client.scm (when-guile<=2.0.5): Rename to... (when-guile<=2.0.5-or-otherwise-broken): ... this. (%web-http): New variable. Monkey-patch 'make-chunked-input-port' when %WEB-HTTP defines 'read-chunk-body'. Ludovic Courtès
2015-03-03http-client: Update backport of chunked encoding support to Guile 2.0.5....* guix/http-client.scm (read-chunk, read-chunk-body) [when-guile<=2.0.5]: Remove. (make-chunked-input-port) [when-guile<=2.0.5]: Update to Guile commit 00d3ecf2. Ludovic Courtès
2015-03-03profiles: Produce a single-file CA certificate bundle....* guix/profiles.scm (ca-certificate-bundle): New procedure. (profile-derivation): Add 'ca-certificate-bundle?' keyword argument. If true (the default), add the result of 'ca-certificate-bundle' to 'inputs'. Co-Authored-By: Ludovic Courtès <ludo@gnu.org> Mark H Weaver
2015-03-02build: ruby: Install executables in /bin....* guix/build/ruby-build-system.scm (install): Add '--bindir' flag to gem command. David Thompson
2015-03-02build: ruby: Add gitify phase....* guix/build-system/ruby.scm (lower): Add git as implicit input. * guix/build/ruby-build-system.scm (gitify): New procedure. (%standard-phases): Add gitify phase. David Thompson
2015-03-02gexp: Make sure 'gexp-outputs' removes duplicate outputs....Fixes a regression introduced in f9efe56. * guix/gexp.scm (gexp-outputs): Add call to 'delete-duplicates'. * tests/gexp.scm ("output list, combined gexps, duplicate output"): New test. Ludovic Courtès
2015-03-01Revert "build-system/gnu: Keep the sloppy conversion strategy during bootstrap."...This reverts commit b479c3ddaf85c831e34888229849bc1ce34419de. This commit was the result of an incorrect characterization of the problem; see the log of commit 87c8b92 for details. Ludovic Courtès
2015-03-01build-system/gnu: Keep the sloppy conversion strategy during bootstrap....* guix/build/gnu-build-system.scm (gnu-build): Leave %DEFAULT-PORT-CONVERSION-STRATEGY unchanged when 'string->bytevector' fails to convert to ISO-8859-1. This is an attempt to work around the build failures at <http://hydra.gnu.org/build/263002>. Ludovic Courtès
2015-02-28utils: Treat 'configure' and Makefiles with an 8-bit encoding....* guix/build/utils.scm (patch-makefile-SHELL, patch-/usr/bin/file): Wrap 'substitute*' in 'with-fluids'. Fixes <http://hydra.gnu.org/build/262895>. Ludovic Courtès
2015-02-28packages: Set the port conversion strategy to 'error'....Suggested by Mark H Weaver. * guix/build/gnu-build-system.scm (gnu-build): Set %DEFAULT-PORT-CONVERSION-STRATEGY to 'error. * guix/packages.scm (patch-and-repack)[builder]: Likewise. Ludovic Courtès
2015-02-28utils: Change 'patch-shebangs' to use binary input....* guix/build/utils.scm (get-char*): New procedure. (patch-shebang): Use it instead of 'read-char'. (fold-port-matches): Remove local 'get-char' and use 'get-char*' instead. Ludovic Courtès
2015-02-27gexp: Aggregate outputs of compound gexps....* guix/gexp.scm (gexp-outputs)[add-reference-output]: Recurse into lists. * tests/gexp.scm ("output list + ungexp-splicing list, combined gexps"): New test. Ludovic Courtès
2015-02-27download: Comment on lack of progress report with chunked encoding....* guix/build/download.scm (progress-proc): Add comment. Ludovic Courtès
2015-02-27download: Measure and display the throughput....* guix/build/download.scm (duration->seconds, throughput->string): New procedures. (progress-proc): Measure and display the throughput. Ludovic Courtès
2015-02-27download: Abstract the receive buffer size....* guix/build/download.scm (%http-receive-buffer-size): New variable. (progress-proc, tls-wrap, http-fetch): Use it. Ludovic Courtès
2015-02-27utils: Call the progress-report proc when 'dump-port' starts....* guix/build/utils.scm (dump-port): Add call to PROGRESS at the beginning. Ludovic Courtès
2015-02-27build-system/gnu: Set $LC_ALL (or similar) to the chosen locale....Suggested by Mark H Weaver. * guix/build/utils.scm (locale-category->string): New procedure. * guix/build/gnu-build-system.scm (install-locale): Add 'setenv' call. Ludovic Courtès
2015-02-27build-system/cmake: Enable verbose output from Makefile builds....* guix/build/cmake-build-system.scm (configure): Pass -DCMAKE_VERBOSE_MAKEFILE=ON to cmake. 宋文武
2015-02-27packages: When possible, use a UTF-8 locale in patch-and-repack....* guix/packages.scm (%standard-patch-inputs): Add "locales". (patch-and-repack)[builder]: Add 'locales' variable. When it is true, call 'setenv' and 'setlocale'. Ludovic Courtès
2015-02-26build-system/gnu: Add 'install-locale' phase....* guix/build/gnu-build-system.scm (install-locale): New procedure. (%standard-phases): Add it. * guix/build-system/gnu.scm (gnu-build): Add #:locale and pass it to the build script. (gnu-cross-build): Likewise. Ludovic Courtès
2015-02-26build-system: Use 'modify-phases'....* guix/build/cmake-build-system.scm (%standard-phases): Use 'modify-phases' instead of alist-*. * guix/build/glib-or-gtk-build-system.scm (%standard-phases): Likewise. * guix/build/gnu-dist.scm (%dist-phases): Likewise. * guix/build/perl-build-system.scm (%standard-phases): Likewise. * guix/build/python-build-system.scm (%standard-phases): Likewise. * guix/build/ruby-build-system.scm (%standard-phases): Likewise. * guix/build/waf-build-system.scm (%standard-phases): Likewise. Ludovic Courtès
2015-02-26utils: Add 'modify-phases'....* guix/build/utils.scm (modify-phases): New macro. Ludovic Courtès
2015-02-26build-system/gnu: Add support for zip archives....Fixes <http://bugs.gnu.org/19866>. Reported by Andreas Enge <andreas@enge.fr>. * guix/build/gnu-build-system.scm (unpack): Use 'unzip' when SOURCE ends in '.zip'. Ludovic Courtès
2015-02-26Merge branch 'master' into core-updatesLudovic Courtès
2015-02-26ui: Add missing copyright line....* guix/ui.scm: Add copyright line for Deck (aka. nebuli). Ludovic Courtès
2015-02-26ui: Honor --no-* options passed via $GUIX_BUILD_OPTIONS....Reported by Alex Kost <alezost@gmail.com> at <http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00702.html>. * guix/ui.scm (parse-command-line)[parse-options-from]: Add 'seeds' parameter. Thread the result of the first 'parse-options-from' call to the second. Ludovic Courtès
2015-02-26ui: Factorize command-line + env. var. option parsing....* guix/ui.scm (%default-argument-handler, parse-command-line): New procedures. (environment-build-options): Make private. * guix/scripts/archive.scm (guix-archive)[parse-options, parse-options-from]: Remove. Use 'parse-command-line' instead. * guix/scripts/build.scm (guix-build): Likewise. * guix/scripts/environment.scm (guix-environment): Likewise. * guix/scripts/package.scm (guix-package): Likewise. * guix/scripts/system.scm (guix-system): Likewise. * tests/ui.scm (with-environment-variable): New macro. ("parse-command-line"): New test. Ludovic Courtès
2015-02-24download: Cope with Guile 2.0.6 or earlier....* guix/build/download.scm: Do not attempt to support relative URIs in "Location" headers if 'declare-relative-uri-header!' is not present. This is the case for Guile 2.0.6 or earlier. Mark H Weaver
2015-02-24guix system: Honor '--no-grub'....Reported by Alex Kost <alezost@gmail.com> at <http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00564.html>. * guix/scripts/system.scm (%options) <no-grub>: Use 'alist-cons' instead of 'alist-delete'. Ludovic Courtès
2015-02-24licenses: Add IPA Font License....* guix/licenses.scm (ipa): New variable. Andreas Enge
2015-02-24tests: Skip tests that would fail due to the shebang length....Reported by Daniel Kochmański <dkochmanski@hellsgate.pl>. Fixes <http://bugs.gnu.org/19888>. * guix/tests.scm (shebang-too-long?): New procedure. * tests/builders.scm ("gnu-build"): Conditionalize on not (shebang-too-long?). * tests/packages.scm ("GNU Make, bootstrap"): Likewise. * tests/guix-package.sh (shebang_not_too_long): New function. Use it to determine whether to build 'gnu-make-boot0'. Ludovic Courtès
2015-02-24tests: Factorize the network reachability test....* guix/tests.scm (network-reachable?): New procedure. * tests/builders.scm (network-reachable?): Remove. Replace references to it with calls to the new 'network-reachable?' procedure. * tests/derivations.scm (%coreutils): Use 'network-reachable?' instead of 'getaddrinfo'. * tests/packages.scm: Likewise. * tests/union.scm: Likewise. Ludovic Courtès
2015-02-20import: cpan: Change %corelist into a promise....Fixes compilation failures in 'guix pull'. * guix/import/cpan.scm (%corelist): Change it to a promise by wrapping it with 'delay'. (cpan-module->sexp): Adapt uses of %corelist by wrapping with 'force'. Mark H Weaver
2015-02-19download: Handle HTTP redirects to relative URI references....Fixes <http://bugs.gnu.org/19840>. Reported by Ricardo Wurmus <rekado@elephly.net>. * guix/build/download.scm: On Guile 2.0.11 or earlier, redefine the http "Location" header to accept relative URIs. (resolve-uri-reference): New exported procedure. (http-fetch): Use 'resolve-uri-reference' to resolve redirections. * guix/http-client.scm (http-fetch): Use 'resolve-uri-reference' Mark H Weaver
2015-02-18import: cpan: Use cpan mirror url....* guix/import/cpan.scm (cpan-module->sexp)[source-url]: Substitute cpan mirror url. Eric Bavier