summaryrefslogtreecommitdiff
path: root/guix
Commit message (Collapse)AuthorAge
* build-system/meson: Strip RUNPATH and remove PatchELF traces.Marius Bakke2018-08-22
| | | | | | | | | * 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'.
* utils: Generate valid substitutions in 'wrap-program'.Jelle Licht2018-08-20
| | | | | * guix/build/utils.scm (wrap-program)[export-variable]: Generate valid bash substitutions when using custom separators.
* Merge branch 'staging' into core-updatesRicardo Wurmus2018-08-13
|\
| * Merge branch 'master' into stagingMarius Bakke2018-08-10
| |\
| | * import: cabal, hackage: Avoid error when custom setup section is missing.Ricardo Wurmus2018-08-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | Merge branch 'master' into stagingMarius Bakke2018-07-30
| |\|
| * | Merge branch 'master' into stagingMarius Bakke2018-07-28
| |\ \
| * | | build-system/meson: Remove RUNPATH workarounds.Marius Bakke2018-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | | guix: ant-build-system: Reorder before generating INDEX.LIST.Julien Lepiller2018-07-19
| | | | | | | | | | | | | | | | | | | | * guix/build/ant-build-system.scm (%standard-phases): Add reorder-jar-content phase.
* | | | build-system/haskell: Let all phases return #T unconditionally.Ricardo Wurmus2018-08-09
| | | | | | | | | | | | | | | | | | | | * guix/build/haskell-build-system.scm (make-ghc-package-database, register, check, haddock): Return #T unconditionally; use INVOKE.
* | | | build-system/gnu: If a phase returns #f, the build fails.Mark H Weaver2018-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/31974>. Introduced by commit d8a3b1b9e847d4a44d2695f95af77170d4d2788f. * guix/build/gnu-build-system.scm (gnu-build): Use 'every' instead of 'for-each'.
* | | | Merge branch 'master' into core-updatesMarius Bakke2018-08-01
|\ \ \ \ | | |_|/ | |/| |
| * | | ssh: Display the size of the store items being sent.Ludovic Courtès2018-07-29
| | |/ | |/| | | | | | | | | | * guix/ssh.scm (send-files): Compute the size of MISSING and display it.
| * | import: hackage: Emit native-inputs in the importer.Danny Milosavljevic2018-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | gnu: python: Update to 3.7.0.Marius Bakke2018-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | gnu: guile: Remove version 2.2.2.Ludovic Courtès2018-07-27
| | | | | | | | | | | | | | | | | | | | | * 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.
* | | gnu: guile: Update to 2.2.4.Ludovic Courtès2018-07-27
| | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | gexp: Remove #:deprecation-warnings from 'imported-files'.Ludovic Courtès2018-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | gexp: Inline bug-fix in 'compiled-modules'.Ludovic Courtès2018-07-27
| | | | | | | | | | | | | | | | | | | | | This is a followup to 5d669883ecc104403c5d3ba7d172e9c02234577c. * guix/gexp.scm (compiled-modules)[build-utils-hack?]: Remove. Inline everything as if BUILD-UTILS-HACK? is true.
* | | gexp: Remove backward compatibility hack for 'imported-files'.Ludovic Courtès2018-07-26
| | | | | | | | | | | | | | | | | | | | | * 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.
* | | packages: 'patch-and-repack' compresses tarballs again.Ludovic Courtès2018-07-26
| | | | | | | | | | | | | | | | | | | | | * 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.
* | | Merge branch 'master' into core-updatesLudovic Courtès2018-07-26
|\| |
| * | ruby-build-system: Make phase "replace-git-ls-files" handle more cases.Danny Milosavljevic2018-07-24
| | | | | | | | | | | | * guix/build/ruby-build-system.scm (replace-git-ls-files): Modify.
* | | Merge branch 'master' into core-updatesMarius Bakke2018-07-24
|\| |
| * | import: PyPI: Update redirected URL.Marius Bakke2018-07-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | build-system: Add 'guile-build-system'.Ludovic Courtès2018-07-23
| | | | | | | | | | | | | | | | | | | | | * 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'.
| * | Revert "guix: Compress and decompress xz archives in parallel."Marius Bakke2018-07-22
| | | | | | | | | | | | | | | | | | | | | 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.
| * | database: Reset timestamps to one second after the Epoch.Ludovic Courtès2018-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | deduplication: Work around Guile bug in 'seek'.Ludovic Courtès2018-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | build-system/go: Use invoke instead of system*.Leo Famulari2018-07-19
| | | | | | | | | | | | | | | | | | * guix/build/go-build-system.scm (unpack, build): Use invoke. (install-source): Unconditionally return #t. (check): Use invoke and unconditionally return #t.
| * | deduplication: Remove 'counting-wrapper-port'.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | * guix/store/deduplication.scm (counting-wrapper-port): Remove. (nar-sha256): Call 'port-position' directly on PORT.
| * | hash: sha256 port now implements 'port-position'.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | | | | | | | * 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'.
| * | self: Use the new 'imported-files'.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | gexp: 'imported-files/derivation' can copy files instead of symlinking.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | | | | | | | | | | * 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'.
| * | gexp: 'imported-files' no longer creates a derivation by default.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | gexp: Remove unnecessary 'mlet'.Ludovic Courtès2018-07-19
| | | | | | | | | | | | * guix/gexp.scm (imported-modules): Use 'let' instead of 'mlet'.
| * | store: Add 'add-file-tree-to-store'.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | | | | * guix/store.scm (%not-slash): New variable. (add-file-tree-to-store, interned-file-tree): New procedures. * tests/store.scm ("add-file-tree-to-store"): New test.
| * | serialization: Add 'write-file-tree'.Ludovic Courtès2018-07-19
| | | | | | | | | | | | | | | | | | | | | | | | * guix/serialization.scm (write-contents-from-port): New procedure. (write-contents): Write in terms of 'write-contents-from-port'. (filter/sort-directory-entries, write-file-tree): New procedures. (write-file): Rewrite in terms of 'write-file-tree'. * tests/nar.scm ("write-file-tree + restore-file"): New test.
| * | ruby-build-system: Error or return #t from all phases.Christopher Baines2018-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, if the tests didn't pass, the check phase would evaluate to #f, but the package would be built sucessfully. This changes all the phases to raise exceptions if errors are encountered, and return #t otherwise. This involves using invoke rather than system*, so that exceptions are raised if the program exits with a status other than 0, and also returning #t at the end of functions. * gnu/build/ruby-build-system.scm (unpack): Use invoke rather than system*, and return #t at the end. (build, check): Use invoke rather than system*. (install): Remove the use of "and", and rewrite the error handling to raise an exception. (wrap): Return #t.
| * | utils: Really clean up temporary directories.Leo Famulari2018-07-13
| | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/32126>. * guix/utils.scm (call-with-temporary-directory): Use DELETE-FILE-RECURSIVELY instead of RMDIR.
| * | pull: Display new/upgraded packages upon completion.Ludovic Courtès2018-07-13
| | | | | | | | | | | | | | | | | | * guix/scripts/pull.scm (display-profile-news): New procedure. (build-and-install): Call it. (display-new/upgraded-packages): Add #:heading and honor it.
| * | pull: Use (guix inferior) to display new and upgraded packages.Ludovic Courtès2018-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/pull.scm (display-profile-content): Call 'display-generation'. (display-new/upgraded-packages, display-profile-content-diff): New procedures. (process-query)[list-generation]: Remove. [list-generations]: New procedure. Adjust accordingly. * doc/guix.texi (Invoking guix pull): Update example of '-l'.
| * | Add (guix inferior) and (guix scripts repl).Ludovic Courtès2018-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/inferior.scm, guix/scripts/repl.scm, tests/inferior.scm: New files. * Makefile.am (MODULES): Add 'guix/scripts/repl.scm' and 'guix/inferior.scm'. (SCM_TESTS): Add 'tests/inferior.scm'. * doc/guix.texi (Invoking guix repl): New node.
| * | guix package: Use relative symlinks to generations.Ludovic Courtès2018-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by Roel Janssen <roel@gnu.org> at <https://lists.gnu.org/archive/html/guix-devel/2018-07/msg00036.html>. * guix/profiles.scm (switch-to-generation): Use (basename generation) as the symlink target. * guix/scripts/package.scm (build-and-use-profile): Likewise, use (basename name) as the symlink target. * tests/guix-package.sh: Adjust --roll-back test accordingly. Add explicitly test with '-p foo/prof'.
| * | git: Call 'url-cache-directory' outside 'update-cached-checkout'.Oleg Pykhalov2018-07-13
| | | | | | | | | | | | | | | | | | * guix/git.scm (update-cached-checkout): Call 'url-cache-directory' in 'cache-directory' key argument. (latest-repository-commit): Call 'url-cache-directory'.
| * | import: hackage: Fix typo.Danny Milosavljevic2018-07-13
| | | | | | | | | | | | | | | * guix/import/cabal.scm (cabal-custom-setuo-name): Rename to... (cabal-custom-setup-name): ...this.
| * | Merge branch 'staging'Marius Bakke2018-07-13
| |\|
| | * Merge branch 'master' into stagingMarius Bakke2018-07-08
| | |\
| | * \ Merge branch 'master' into stagingMarius Bakke2018-07-02
| | |\ \
| | * | | build-system/meson: Really skip the 'fix-runpath' phase on armhf.Marius Bakke2018-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This follows up commit d5b5a15a4046362377f1a45d466b43bb6e93d4f which doesn't work because %current-system etc expands before the actual build. Fixes <https://bugs.gnu.org/31719>. * guix/build-system/meson.scm (meson-build)[builder]: Compare against the already existing "system" variable rather than (%current-system).