summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2018-08-25Merge branch 'staging' into core-updatesMarius Bakke
2018-08-25Merge branch 'master' into stagingMarius Bakke
2018-08-24grafts: Add (guix build debug-link) and use it.Ludovic Courtès
Fixes <https://bugs.gnu.org/19973>. Reported by Mark H Weaver <mhw@netris.org>. * guix/build/debug-link.scm: New file. * guix/build/graft.scm (%graft-hooks): New variable. (graft): Add #:hooks and honor it. * guix/grafts.scm (graft-derivation/shallow): Add (guix build debug-link) and (guix elf) to #:modules. * tests/debug-link.scm: New file. * Makefile.am (MODULES): Add guix/build/debug-link.scm. (SCM_TESTS): Add tests/debug-link.scm.
2018-08-24grafts: Add high-level 'graft' procedure on the build side.Ludovic Courtès
* guix/build/graft.scm (graft): New procedure. * guix/grafts.scm (graft-derivation/shallow)[build]: Use it instead of inline code.
2018-08-22Merge branch 'master' into stagingMarius Bakke
2018-08-22build-system/meson: Strip RUNPATH and remove PatchELF traces.Marius Bakke
* guix/build-system/meson.scm (%meson-build-system-modules): Don't import (guix build rpath). * guix/build/meson-build-system.scm (fix-runpath): Rename to ... (shrink-runpath): ... this. Update docstring. Remove AUGMENT-RPATH calls and related code. (%standard-phases): Add 'shrink-runpath'.
2018-08-21inferior: Adjust for Guile 2.0.Ludovic Courtès
Partly fixes <https://bugs.gnu.org/32326>. Reported by Michael Bowcutt <mbowcutt@riseup.net>. * guix/inferior.scm (open-inferior): Wrap 'setvbuf' call in 'cond-expand'.
2018-08-21build-system/asdf: Fix typo in "dependency".Pierre Neidhardt
* guix/build-system/asdf.scm (default-lisp): Fix typo in "dependency".
2018-08-20utils: Generate valid substitutions in 'wrap-program'.Jelle Licht
* guix/build/utils.scm (wrap-program)[export-variable]: Generate valid bash substitutions when using custom separators.
2018-08-20import: github: Filter out tags that don't look like version numbers.Ludovic Courtès
* guix/import/github.scm (latest-released-version): Filter out RELEASE if it doesn't start with digit.
2018-08-20import: github: Get /tags when /releases returns the empty list.Ludovic Courtès
This allows "guix refresh" to work for many packages where it would previously fail with "no updater for PACKAGE". * guix/import/github.scm (fetch-releases-or-tags): New procedure. (latest-released-version): Use it instead of calling 'json-fetch'. Adjust 'hash-ref' call.
2018-08-20import: github: Request API v3 in the 'Accept' header.Ludovic Courtès
* guix/import/json.scm (json-fetch): Add #:headers argument and honor it. * guix/import/github.scm (latest-released-version): Pass #:headers to 'json-fetch'.
2018-08-19guix: svn: Remove all .svn folders.Julien Lepiller
* guix/build/svn.scm (svn-fetch): Remove all .svn folders as they contain timestamps.
2018-08-16Merge branch 'master' into stagingMarius Bakke
2018-08-13Merge branch 'staging' into core-updatesRicardo Wurmus
2018-08-11import: hackage: Support recursive importing.Ricardo Wurmus
* guix/import/hackage.scm (hackage-recursive-import): New procedure. (hackage-module->sexp): Return dependencies alongside dependencies. (hackage->guix-package): Memoize results. * guix/scripts/import/hackage.scm (show-help, %options, guix-import-hackage): Support recursive importing. * doc/guix.texi (Invoking guix import): Document option.
2018-08-11Migrate search.cpan.org home pages to metacpan.org.Tobias Geerinckx-Rice
The venerable search.cpan.org has retired[0]. [0]: https://log.perl.org/2018/05/goodbye-search-dot-cpan-dot-org.html * guix/import/cpan.scm (cpan-home): Generate metacpan.org home page URIs. Update all previously generated ones in (gnu packages) to their canonical new homes.
2018-08-10Merge branch 'master' into stagingMarius Bakke
2018-08-09build-system/haskell: Let all phases return #T unconditionally.Ricardo Wurmus
* guix/build/haskell-build-system.scm (make-ghc-package-database, register, check, haddock): Return #T unconditionally; use INVOKE.
2018-08-07import: cabal, hackage: Avoid error when custom setup section is missing.Ricardo Wurmus
Fixes <https://debbugs.gnu.org/32387>. * guix/import/cabal.scm (eval-cabal): Avoid mis-match when the custom-setup section cannot be created. * guix/import/hackage.scm (cabal-custom-setup-dependencies->names): Do not crash when cabal-package-custom-setup returns #F.
2018-08-03build-system/gnu: If a phase returns #f, the build fails.Mark H Weaver
Fixes <https://bugs.gnu.org/31974>. Introduced by commit d8a3b1b9e847d4a44d2695f95af77170d4d2788f. * guix/build/gnu-build-system.scm (gnu-build): Use 'every' instead of 'for-each'.
2018-08-01Merge branch 'master' into core-updatesMarius Bakke
2018-07-30Merge branch 'master' into stagingMarius Bakke
2018-07-29ssh: Display the size of the store items being sent.Ludovic Courtès
* guix/ssh.scm (send-files): Compute the size of MISSING and display it.
2018-07-28Merge branch 'master' into stagingMarius Bakke
2018-07-28gnu: python: Update to 3.7.0.Marius Bakke
* gnu/packages/python.scm (python-3.6): Rename to ... (python-3.7): ... this. Update to 3.7.0. [arguments]: Remove phase 'patch-timestamp-for-pyc-files' and related code. Add phases to unset SOURCE_DATE_EPOCH during the check phase. (python-3): Is now PYTHON-3.7. * guix/build/python-build-system.scm (enable-bytecode-determinism): Don't set DETERMINISTIC_BUILD.
2018-07-28build-system/meson: Remove RUNPATH workarounds.Marius Bakke
* guix/build-system/meson.scm (default-patchelf): Remove. (lower)[build-inputs]: Remove PATCHELF. (meson-build): Don't delete 'fix-runpath' phase on armhf. * guix/build/meson-build-system.scm (configure): Add "--c_link_args" and "-cpp_link_args" instead of setting LDFLAGS. (meson-build): Don't apply 'fix-runpath' phase.
2018-07-27import: hackage: Emit native-inputs in the importer.Danny Milosavljevic
* guix/import/cabal.scm (cabal-custom-setup-dependencies): Export. (cabal-package-custom-setup): Export. (<cabal-package>): New field "custom-setup". (make-cabal-package): Modify. (eval-cabal): Modify. * guix/import/hackage.scm (cabal-dependencies->names): Factor out... (cabal-test-dependencies->names): ...this. (cabal-custom-setup-dependencies->names): New procedure. (hackage-module->sexp): Modify.
2018-07-27gnu: guile: Remove version 2.2.2.Ludovic Courtès
* gnu/packages/guile.scm (guile-2.2.2): Remove. * guix/self.scm (guile-for-build): Remove special case for "2.2.2". (guix-derivation): Likewise. * build-aux/build-self.scm (build): Likewise.
2018-07-27gnu: guile: Update to 2.2.4.Ludovic Courtès
* gnu/packages/guile.scm (guile-2.2): Update to 2.2.4. (guile-2.2.4): Remove. * gnu/packages/package-management.scm (guix)[inputs]: Switch to GUILE-2.2. * guix/self.scm (guile-for-build): Likewise.
2018-07-27gexp: Remove #:deprecation-warnings from 'imported-files'.Ludovic Courtès
This is a followup to 30d722c392960373bb45c3248d318ef6e248fb67. * guix/gexp.scm (imported-files/derivation): Remove #:deprecation-warnings. Pass "GUILE_WARN_DEPRECATED=no" unconditionally to #:env-vars of 'gexp->derivation'. Adjust caller. (imported-files): Remove #:deprecation-warnings and adjust callers. (imported-modules): Likewise. (compiled-modules, gexp->derivation): Adjust accordingly.
2018-07-27gexp: Inline bug-fix in 'compiled-modules'.Ludovic Courtès
This is a followup to 5d669883ecc104403c5d3ba7d172e9c02234577c. * guix/gexp.scm (compiled-modules)[build-utils-hack?]: Remove. Inline everything as if BUILD-UTILS-HACK? is true.
2018-07-26gexp: Remove backward compatibility hack for 'imported-files'.Ludovic Courtès
* guix/gexp.scm (gexp->derivation): Remove #:import-creates-derivation?. (imported-files): Remove #:derivation? and adjust callers. (imported-modules), compiled-modules): Likewise. * guix/packages.scm (patch-and-repack): Adjust 'gexp->derivation' call.
2018-07-26packages: 'patch-and-repack' compresses tarballs again.Ludovic Courtès
* guix/packages.scm (patch-and-repack): Add missing "a" in "tar cvfa". Fixes a regression introduced in 3e95125e9bd0676d4a9add9105217ad3eaef3ff0 whereby we'd always create uncompressed tarballs.
2018-07-26Merge branch 'master' into core-updatesLudovic Courtès
2018-07-24ruby-build-system: Make phase "replace-git-ls-files" handle more cases.Danny Milosavljevic
* guix/build/ruby-build-system.scm (replace-git-ls-files): Modify.
2018-07-24Merge branch 'master' into core-updatesMarius Bakke
2018-07-24import: PyPI: Update redirected URL.Marius Bakke
* guix/import/pypi.scm (guix-package->pypi-name, pypi->guix-package): Update docstrings. (pypi-package?): Test for pypi.org, too. (pypi-fetch): s/pypi.python.org/pypi.org/ * tests/pypi.scm ("guix-package->pypi-name, new URL style", "pypi->guix-package", "pypi->guix-package, wheels"): Likewise.
2018-07-23build-system: Add 'guile-build-system'.Ludovic Courtès
* guix/build-system/guile.scm, guix/build/guile-build-system.scm: New files. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'guile-build-system'.
2018-07-22Revert "guix: Compress and decompress xz archives in parallel."Marius Bakke
Threaded compression makes archives non-deterministic: the result depends on the number of threads used for compressing. See <https://bugs.gnu.org/31015>. This reverts commit 63102406f22412bb922de5549deb89d3594a38c0.
2018-07-22Revert "packages: Enable threaded compression of source tarballs."Marius Bakke
Threaded compression makes tarballs non-deterministic: the result depends on the number of threads used for compressing. See <https://bugs.gnu.org/31015>. This reverts commit c8a3dea847bb9f87fa1876d0c6c3356d6226f121.
2018-07-20database: Reset timestamps to one second after the Epoch.Ludovic Courtès
Previously, store items registered in the database by this code (for instance, store items retrieved by 'guix offload' and passed to 'restore-file-set') would have an mtime of 0 instead of 1. This would cause problems for things like .go files: Guile would consider them to be older than the corresponding .scm file, and consequently it would ignore them and possibly use another (incorrect) .go file. Reported by Ricardo Wurmus. * guix/store/database.scm (reset-timestamps): Pass 1, not 0, to 'utime'. * tests/store-database.scm ("register-path"): Check the mtime of FILE and REF.
2018-07-20deduplication: Work around Guile bug in 'seek'.Ludovic Courtès
Fixes <https://bugs.gnu.org/32161>. Reported by Ricardo Wurmus <rekado@elephly.net>. This mostly reverts 83099892e0cf0d9c59f5e1a0774331026e48baa8. * guix/store/deduplication.scm (counting-wrapper-port): New procedure. (nar-sha256): Use it.
2018-07-19build-system/go: Use invoke instead of system*.Leo Famulari
* guix/build/go-build-system.scm (unpack, build): Use invoke. (install-source): Unconditionally return #t. (check): Use invoke and unconditionally return #t.
2018-07-19guix: ant-build-system: Reorder before generating INDEX.LIST.Julien Lepiller
* guix/build/ant-build-system.scm (%standard-phases): Add reorder-jar-content phase.
2018-07-19deduplication: Remove 'counting-wrapper-port'.Ludovic Courtès
* guix/store/deduplication.scm (counting-wrapper-port): Remove. (nar-sha256): Call 'port-position' directly on PORT.
2018-07-19hash: sha256 port now implements 'port-position'.Ludovic Courtès
* guix/hash.scm (open-sha256-port)[position]: New variable. [get-position]: New procedure. Pass it to 'make-custom-binary-output-port'. * tests/hash.scm ("open-sha256-port, hello"): Test 'port-position'.
2018-07-19self: Use the new 'imported-files'.Ludovic Courtès
That way, the source of most nodes is now a content-addressed store item instead of a derivation. * guix/self.scm (<file-mapping>): New record type. (file-mapping-compiler): New procedure. (scheme-node): Use 'file-mapping' instead of 'imported-files'. (imported-files): Remove.
2018-07-19gexp: 'imported-files/derivation' can copy files instead of symlinking.Ludovic Courtès
* guix/gexp.scm (imported-files/derivation): Add #:symlink? and honor it. (imported-files): Pass #:symlink? to 'imported-files/derivation'. * tests/gexp.scm ("imported-files with file-like objects"): Add 'file=?' and use it instead of calling 'readlink'.
2018-07-19gexp: 'imported-files' no longer creates a derivation by default.Ludovic Courtès
* guix/gexp.scm (gexp->derivation): Add #:import-creates-derivation?. Pass #:derivation? to 'imported-modules' and 'compiled-modules'. In -L argument, check whether MODULES is a derivation. (%not-slash): New variable. (file-mapping->tree): New procedure. (imported-files): Rename to... (imported-files/derivation): ... this. (imported-files): New procedure. Rewrite in terms of 'interned-file-tree' when possible; add #:derivation? parameter. (imported-modules, compiled-modules): Add #:derivation? parameter and pass it to 'imported-files'. * guix/packages.scm (patch-and-repack): Pass #:import-creates-derivation? to 'gexp->derivation'. * tests/gexp.scm ("imported-files"): Adjust to no longer expect a derivation.