summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2020-02-17Add (guix build gnu-bootstrap).Timothy Sample
* guix/build/gnu-bootstrap.scm: New file. * Makefile.am (MODULES): Add it.
2020-02-17utils: Change 'patch-shebang' to not try to patch Rust source files.Danny Milosavljevic
* guix/build/utils.scm (patch-shebang): Match only absolute paths.
2020-02-16build: gnu-build-system: Adjust NOCONFIGURE variable.Efraim Flashner
This ia a follow-up to 481a0f1a7ceac666a011b28324220584ead07698. * guix/build/gnu-build-system.scm (bootstrap): Set NOCONFIGURE for all bootstrap scripts. Clean up variable after use.
2020-02-16build-system/gnu: Don't try executing directories in bootstrap phase.Brendan Tildesley
* guix/build/gnu-build-system.scm: (bootstrap): Change the file-exists? procedure to one that excludes directories, so that we do not mistake it for a script. For example if the source includes a bootstrap/ directory. Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-02-16build: gnu-build-system: Don't run configure during bootstrap.Efraim Flashner
* guix/build/gnu-build-system.scm (bootstrap): Add NOCONFIGURE environment variable before running bootstrap scripts.
2020-02-14Merge branch 'master' into core-updatesMarius Bakke
2020-02-14guix build: Add '--manifest' option.Marius Bakke
* guix/scripts/build.scm (show-help): Document --manifest argument. (options->things-to-build): When given a manifest, evaluate all the entries. * tests/guix-build.sh: Add test for --manifest. * doc/guix.texi (Additional Build Options): Mention --manifest. * etc/completion/bash/guix: Complete file name if 'guix build' argument is -m.
2020-02-12gnu: cross-base: Switch back to 'CROSS_C_INCLUDE_PATH' & co.Ludovic Courtès
This is a followup to 2073b55e6b964cb8ca15e8c74cb32dac00f05f0d. * gnu/build/cross-toolchain.scm (%gcc-include-paths): Switch back to 'C_INCLUDE_PATH' & co. * gnu/packages/cross-base.scm (%gcc-include-paths): Likewise. (cross-gcc-arguments): Remove 'treat-glibc-as-system-header' phase. (cross-gcc)[native-inputs]: Reorder so that libc comes last. [search-paths]: Add "include/c++" for 'CROSS_CPLUS_INCLUDE_PATH'. * guix/build-system/gnu.scm (standard-cross-packages): Have "cross-gcc" appear both for 'host and 'target.
2020-02-11build: go-build-system: Disable Go module support.Jack Hill
This allows for upgrading the Go compiler without overhauling go-build-system first. * guix/build/go-build-system.scm (setup-go-environment): Set GO111MODULE to off. Signed-off-by: Alex Griffin <a@ajgrf.com>
2020-02-11ui: Fix typo in comment.Ludovic Courtès
Reported by Vincent Legoll <vincent.legoll@gmail.com>. * guix/ui.scm (call-with-error-handling): Remove "come" in comment.
2020-02-11describe: Remove dependency on (guix scripts pull).Ludovic Courtès
Until now, 'guix describe' would perform ~3K stat calls and ~1K openat calls because it was pulling (guix scripts pull), which in turn pulls in many (gnu packages …) modules. * guix/scripts/pull.scm (display-profile-content, %vcs-web-views) (channel-commit-hyperlink): Move to... * guix/scripts/describe.scm: ... here. Remove import of (guix scripts pull).
2020-02-11swh: Remove 'id' field from <origin>.Ludovic Courtès
The "id" field has been removed upstream: https://sympa.inria.fr/sympa/arc/swh-devel/2020-02/msg00005.html * guix/swh.scm (<origin>)[id]: Remove.
2020-02-10git: Add missing exports for <git-checkout>.Ludovic Courtès
* guix/git.scm (<git-checkout>): Export 'git-checkout-commit' and 'git-checkout-recursive?'.
2020-02-10Merge branch 'staging'Marius Bakke
2020-02-09Update e-mail address for Jakob L. Kreuze.Tobias Geerinckx-Rice
As requested here: <https://lists.gnu.org/archive/html/guix-devel/2020-02/msg00128.html>. * .mailmap: Add an entry for Jakob. * gnu/machine.scm, gnu/machine/digital-ocean.scm, gnu/machine/ssh.scm, gnu/packages/admin.scm, gnu/packages/i2p.scm, gnu/packages/music.scm, gnu/packages/web.scm, gnu/tests/reconfigure.scm, guix/scripts/deploy.scm, guix/scripts/system/reconfigure.scm: Update their e-mail address.
2020-02-06gnu: gcc: Switch back to using 'C_INCLUDE_PATH' instead of 'CPATH'.Ludovic Courtès
Fixes <https://bugs.gnu.org/30756>. Initially reported by Julien Lepiller <julien@lepiller.eu>. * gnu/packages/base.scm (make-gcc-libc): Remove 'treat-glibc-as-system-header' phase from 'arguments'. * gnu/packages/commencement.scm (gcc-final): Likewise. * gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add "include/c++" to 'CPLUS_INCLUDE_PATH'. (gcc-6)[native-search-paths]: Remove. * gnu/packages/make-bootstrap.scm (gcc-for-bootstrap): Remove 'native-search-paths' and 'arguments'. * gnu/packages/patches/python-2.7-search-paths.patch, gnu/packages/patches/python-3-search-paths.patch: Replace "CPATH" with "C_INCLUDE_PATH". * guix/build-system/cmake.scm (lower): When not cross-compiling, move INPUTS from the 'host-inputs' field to the 'build-inputs' field of the bag, right after NATIVE-INPUTS. * guix/build-system/glib-or-gtk.scm (lower): Likewise. * guix/build-system/gnu.scm (lower): Likewise. * guix/build-system/meson.scm (lower): Likewise.
2020-02-06git: Remove leftover pk call.Mathieu Othacehe
* guix/git.scm (update-cached-checkout): Remove leftover pk call.
2020-02-06git: Add ssh authentication support.Mathieu Othacehe
If Guile-Git revision is >= 0.3.0, use SSH agent authentication method for both clone and fetch calls. * guix/git.scm (auth-supported?): New variable, (clone*): set auth-method to ssh-agent if the variable above is true, (update-cached-checkout): ditto.
2020-02-05Merge branch 'master' into stagingMarius Bakke
2020-02-05import: pypi: Support exporting packages with .zip source.Jakub Kądziołka
* guix/import/pypi.scm (make-pypi-sexp): Rename test-inputs to native-inputs. Restructure the way pypi-uri parameters are generated. Use pypi-uri's extension parameter when required. Add "unzip" to native inputs when the package source is a zip file. Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-02-05import: gem: Deal with unavailable licensing info.Ludovic Courtès
Fixes <https://bugs.gnu.org/39404>. Reported by Seth <lee.seth@tuta.io>. * guix/import/gem.scm (<gem>)[licenses]: Adjust for non-vector licenses. * tests/gem.scm (test-bar-json): Change "licenses" to 'null'. ("gem-recursive-import"): Adjust accordingly.
2020-02-05import: gem: Rewrite to use a JSON mapping to records.Ludovic Courtès
* guix/import/gem.scm (<gem>, <gem-dependencies>, <gem-dependency>): New record types with JSON mapping. (json->gem-dependencies): New procedures. (rubygems-fetch): Use it. (hex-string->bytevector): Remove. (make-gem-sexp): Expect HASH to be a bytevector. (gem->guix-package): Adjust to use the new <gem> data type instead of an alist. (latest-release): Likewise.
2020-02-04Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2020-02-03licenses: Add Unicode license.Leo Prikler
* guix/licenses.scm (unicode): New variable. Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2020-02-03Merge branch 'staging' into core-updatesMarius Bakke
2020-01-30guix: Fix missing export for make-desktop-entry-file.Pierre Neidhardt
* guix/build/utils.scm: Export make-desktop-entry-file.
2020-01-30derivations: Import modules with 'add-file-tree-to-store'.Ludovic Courtès
This reduces the number of RPCs on "guix build libreoffice -nd" from 2,589 to 2,558 (1%). * guix/derivations.scm (imported-files): Rewrite to call to 'add-file-tree-to-store'. Remove #:system and #:guile parameters. (%imported-modules): Adjust docstring to say that result is a store item, and adjust 'imported-files' call. (%compiled-modules): Adjust accordingly. (imported+compiled-modules): Likewise. (build-expression->derivation): Likewise.
2020-01-30gexp: Move 'file-mapping->tree' to (guix store).Ludovic Courtès
* guix/gexp.scm (%not-slash): Remove. (file-mapping->tree): Move to... * guix/store.scm (file-mapping->tree): ... here.
2020-01-29Merge branch 'master' into stagingMarius Bakke
2020-01-28Use HTTPS for liballeg.org.Tobias Geerinckx-Rice
* gnu/packages/game-development.scm (allegro-4, allegro)[home-page]: Use HTTPS. * guix/licenses.scm (giftware): Likewise.
2020-01-28guix: qt-build-system: Add phase `check-setup`.Hartmut Goebel
* guix/build/qt-build-system.scm (check-setup): New function. (%standard-phases): Add as new phase `check-setup before `check. * doc/guix.texi (Build System)[qt-build-system]: Describe the new phase.
2020-01-27build: cargo-build-system: Add pkg-config environment variables.Efraim Flashner
* guix/build/cargo-build-system.scm (configure): Add environment variables to use system libgit2 and libssh2. * gnu/packages/crates-io.scm (rust-libgit2-sys-0.10, rust-libssh2-sys-0.2)[arguments]: Remove LIBGIT2 and LIBSSH2 environment variable settings. * gnu/packages/rust-apps.scm (tokei)[arguments]: Same.
2020-01-27build: cargo-build-system: Allow patched crates.Efraim Flashner
* guix/build/cargo-build-system.scm (crate-src?): Don't check for a gzipped tarball, just make sure it's not a directory.
2020-01-27guix: ocaml: Also replace dune when relevant in package-with-explicit-ocaml.Julien Lepiller
* guix/build-system/ocaml.scm (package-with-explicit-ocaml): Take a dune argument and add it to transformed packages when relevant.
2020-01-26build-system/cmake: Specify C++ compiler when cross-compiling.Marius Bakke
* guix/build/cmake-build-system.scm (configure)[args]: Add "-DCMAKE_CXX_COMPILER" when cross-compiling.
2020-01-26build-system/cmake: Enable parallel tests by default.Marius Bakke
* guix/build-system/cmake.scm (cmake-build, cmake-cross-build): Set the PARALLEL-TESTS? key to #t.
2020-01-24serialization: 'read-byte-string' makes a single read(2) call.Ludovic Courtès
On "guix build libreoffice -nd", this reduces the number of read(2) system calls from 10,434 to 8092. * guix/serialization.scm (sub-bytevector): New procedure. (read-byte-string): Make a single 'get-bytevector-n*' call and use 'sub-bytevector'.
2020-01-24guix build, archive, graph: Disable absolute file port name canonicalization.Ludovic Courtès
This avoids an 'lstat' storm. Specifically: ./pre-inst-env strace -c guix build -nd libreoffice goes from 1,711 to 214 'lstat' calls. * guix/scripts/build.scm (options->things-to-build): When SPEC matches 'derivation-path?', call 'canonicalize-path'. (guix-build): Remove 'with-fluids' for %FILE-PORT-NAME-CANONICALIZATION. * guix/scripts/archive.scm (guix-archive): Remove 'with-fluids' for %FILE-PORT-NAME-CANONICALIZATION. * guix/scripts/graph.scm (guix-graph): Likewise.
2020-01-24ui: Do not display error messages with bare format strings.Ludovic Courtès
On Guile 3, with, say, an error in ~/.guile, we'd get: $ guix repl guix repl: error: Unbound variable: ~S * guix/ui.scm (call-with-error-handling): Add '&exception-with-kind-and-args' case.
2020-01-23self: Build with Guile 3.0.Ludovic Courtès
* guix/self.scm (specification->package): Return the "guile3.0-" variants. (guix-derivation): Change 'guile' to (specification->package "guile"). Pass "3.0" as #:guile-version.
2020-01-23derivations: Inline 'find' in 'coalesce-duplicate-inputs'.Ludovic Courtès
Previously the first argument to 'find' would show up high in profiles of 'package-derivation'. This speeds things up a big, especially on Guile 3. * guix/derivations.scm (coalesce-duplicate-inputs)[find]: New procedure.
2020-01-23compile: Remove incorrect exports.Ludovic Courtès
This is a followup to fed36328129def5f10b1d1f3e4ea8886916fd22a. * guix/build/compile.scm: Remove exports of '%lightweight-optimizations' and '%default-optimizations'. * guix/self.scm: Remove unused (guix build compile) module.
2020-01-23Merge branch 'staging' into core-updatesMarius Bakke
2020-01-22guix: ocaml: Reuse package-with-ocaml4.01 with ocaml-4.07.Julien Lepiller
* guix/build-system/guix.scm (package-with-ocaml4.01) (strip-ocaml4.01-variant): Rename to... (package-with-ocaml4.07, strip-ocaml4.07-variant): ... this and rename internal implementation.
2020-01-21Merge branch 'staging' into core-updatesMarius Bakke
2020-01-19guix package: Create profiles/per-user/$USER upfront.Ludovic Courtès
Fixes <https://bugs.gnu.org/39194>. Reported by Matt Wette <matt.wette@gmail.com>. * guix/scripts/package.scm (build-and-use-profile): Move 'ensure-default-profile' call to... (process-actions): ... here.
2020-01-19syscalls: Pass the right 'throw' arguments in 'call-with-file-lock/no-wait'.Ludovic Courtès
Reported by Matt Wette <matt.wette@gmail.com> in <https://bugs.gnu.org/39194>. * guix/build/syscalls.scm (call-with-file-lock/no-wait): When re-throwing, pass KEY in addition to ARGS.
2020-01-19repl: Avoid dependency on high-level package modules.Ludovic Courtès
* guix/scripts/repl.scm: Remove imports of (guix scripts build), (gnu packages), (guix utils), and (guix packages). (%options): Define "--load-path" option right here.
2020-01-19repl: Adjust "--listen" help message.Ludovic Courtès
* guix/scripts/repl.scm (show-help): Adjust "--listen" string.
2020-01-19repl: Add "-q".Ludovic Courtès
* guix/scripts/repl.scm (%options, show-help): Add "-q". (guix-repl): Add 'user-config' and use it. Honor 'ignore-dot-guile?'.