summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2023-11-03guix: Upgrade to Bioconductor 3.18.Ricardo Wurmus
* guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to 3.18. * guix/import/cran.scm (%bioconductor-version): Same. Change-Id: Ic3fc2e6ab6b5f6f6e55662f81baee67391158c5b
2023-10-28build-system/go: Use gccgo when go isn't supported.Efraim Flashner
* guix/build-system/go.scm (default-gccgo): New variable. (lower): Only use default-go when it is supported. Change-Id: I30564d97703344df582accaf741f4fcd159b6be1
2023-10-28environment: Fix typo in error messages.Ludovic Courtès
* guix/scripts/environment.scm (guix-environment*): Fix typo in error messages. Change-Id: I0b8669cb43267d0456a70f3b157514a6bcc725e8
2023-10-28environment: Parameterize ‘%graft?’ early on.Ludovic Courtès
Previously, ‘%graft?’ would be parameterized after ‘package-derivation’ had been called for ‘%guile-for-build’, which is too late. * guix/scripts/environment.scm (guix-environment*)[with-store/maybe]: Parameterize ‘%graft?’. Remove ‘%graft?’ parameterization from body. Change-Id: I65ef4a8c5f27e19a49196005871e5f7057fabaec
2023-10-28profiles: Hooks honor the #:system parameter of ‘profile-derivation’.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/65225>. * guix/profiles.scm (info-dir-file, package-cache-file) (info-dir-file, ghc-package-cache-file, ca-certificate-bundle) (emacs-subdirs, gdk-pixbuf-loaders-cache-file, glib-schemas) (gtk-icon-themes, gtk-im-modules, linux-module-database) (xdg-desktop-database, xdg-mime-database, fonts-dir-file) (manual-database, manual-database/optional): Add optional #:system parameter and pass it to ‘gexp->derivation’. (profile-derivation): Pass HOOK a second parameter, SYSTEM. * gnu/bootloader.scm (efi-bootloader-profile)[efi-bootloader-profile-hook]: Add optional #:system parameter and pass it to ‘gexp->derivation’. * guix/channels.scm (package-cache-file): Likewise. * tests/profiles.scm ("profile-derivation, #:system, and hooks"): New test. Reported-by: Tobias Geerinckx-Rice <me@tobias.gr>
2023-10-28packages: Add ‘system’ parameter for ‘set-guile-for-build’.Ludovic Courtès
* guix/packages.scm (set-guile-for-build): Add ‘system’ parameter.
2023-10-28environment: Honor ‘-s’ for guile-for-build.Ludovic Courtès
Partly fixes <https://issues.guix.gnu.org/65225>. * guix/scripts/environment.scm (guix-environment*): Pass SYSTEM to ‘package-derivation’ when defining ‘%guile-for-build’. Reported-by: Simon Tournier <zimon.toutoune@gmail.com> Change-Id: I9d883f1e61fac72754fdc9dee9b7c8a3dea32add
2023-10-28grafts: Fix corner case involving multiple-output derivations.Ludovic Courtès
Fixes a bug that would occur with references to two outputs of the same derivation, with one of them referring to the other one. For example, the references of libreoffice include both mariadb:dev and mariadb:lib; additionally, mariadb:dev refers to mariadb:lib. In this case, the glibc graft would not be applied on one of the mariadb paths, and both the grafted and ungrafted glibc would end up in the closure of libreoffice. Fixes <https://issues.guix.gnu.org/66662>. * guix/grafts.scm (non-self-references): Simplify and include references to outputs of DRV other than OUTPUTS. (reference-origins): Simplify and possibly return outputs of DRV itself. (cumulative-grafts)[graft-origin?]: Add OUTPUT parameter and honor it. [dependency-grafts]: Adjust accordingly. * tests/grafts.scm ("graft-derivation, multiple outputs need to be replaced"): New test. Change-Id: Iac2005024ab7049037537b3af55298696ec90e3c
2023-10-26utils: Add 'strip-for-target'.Zheng Junjie
* guix/utils.scm (strip-for-target): New procedure. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2023-10-23syscalls: Consistently use existing linux? definition.Sören Tempel
Instead of duplicating this existing logic across the source file. This will make it easier to add additional linux targets (e.g. linux-musl) in the future. * guix/build/syscalls.scm (readdir*, write-socket-address!) (read-socket-address): Use linux? constant. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I833c1d1630dcb8319584de1ea918cb22696f0058
2023-10-23syscalls: Add support for musl libc.Sören Tempel
This commit allows using Guix on a foreign distro which uses musl libc, for example, Alpine Linux. Usage of musl libc is detected via a new musl-libc? variable using the Guile %host-type. Using the new musl-libc? variable, we can now implement musl-specific quirks. The two compatibility problems I encountered in this regard are that musl dose not export a readdir64 and statfs64 symbol. On musl, these two functions are implemented as CPP macros that expand to readdir/statfs. To workaround that, a case-distinction was added. The existing linux? variable has been modified to return true if the %host-system contains "linux-" in order to ensure it is true for both linux-gnu as well as linux-musl host systems. The patch has been tested on Alpine Linux and is already used for the downstream Guix package shipped in Alpine Linux's package repository. * guix/build/syscalls.scm (musl-libc?): New variable. (linux?): Truth value on any linux system. (statfs, readdir-procedure): Support musl libc. Signed-off-by: Sören Tempel <soeren@soeren-tempel.net> Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: Icc4101a062381240f977f4550344bde696513c52
2023-10-23build-system/dub: Remove dependency on (guix build syscalls).Ludovic Courtès
The (guix build syscalls) module was unused. * guix/build-system/dub.scm (%dub-build-system-modules): Remove (guix build syscalls).
2023-10-23build-system/android-ndk: Remove dependency on (guix build syscalls).Ludovic Courtès
The (guix build syscalls) module was unused. * guix/build-system/android-ndk.scm (%android-ndk-build-system-modules): Remove (guix build syscalls).
2023-10-23build-system/ant: Remove dependency on (guix build syscalls).Ludovic Courtès
The module has been unused since a6343af22161b21ddbc4143a2b6a60d1ee860eb0. * guix/build-system/ant.scm (%ant-build-system-modules): Remove (guix build syscalls).
2023-10-22guix: import: Don't import yanked rust crates.Efraim Flashner
* guix/import/crate.scm (<crate-version>): Add yanked? field. (crate->guix-package)[find-crate-version]: Remove versions which have been yanked. * tests/crate.scm: Adjust tests for new yanked? field.
2023-10-21Merge remote-tracking branch 'origin/rust-team'Efraim Flashner
2023-10-21build-system: Add zig-build-system.Ekaitz Zarraga
* guix/build-system/zig.scm: New file. * guix/build/zig-build-system.scm: New file. * Makefile.am: Add them. * doc/guix.texi: Document it. * etc/snippets/yas/scheme-mode/guix-package (build-system): Add zig-build-system. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-10-18Revert "build: cargo-build-system: Disable tests by default."Efraim Flashner
This reverts commit 37667443074a6de29f7665868f102111d62f0af9. This change needs more discussion.
2023-10-18build: cargo-build-system: Find more pregenerated files.Efraim Flashner
* guix/build/cargo-build-system.scm (check-for-pregenerated-files): Also search for MacOS dynamic libraries.
2023-10-18build: cargo-build-system: Disable tests by default.Efraim Flashner
* guix/build-system/cargo.scm (cargo-build): Disable tests by default. * gnu/packages/admin.scm (greetd, wlgreet, du-dust), * gnu/packages/bioinformatics.scm (circtools, python-gseapy), * gnu/packages/crypto.scm (rust-minisign, b3sum), * gnu/packages/gnome.scm (librsvg), * gnu/packages/python-crypto.scm (python-blake3, python-cryptography-rust), * gnu/packages/python-xyz.scm (python-orjson), * gnu/packages/rust-apps.scm (agate, alfis, bat, diffr, drill, dutree, exa, fd, hexyl, hyperfine, i3status-rust, just, maturin, ripgrep, rot8, rust-swc, rust-cargo-edit, git-interactive-rebase-tool, rust-cbindgen, rust-cbindgen-0.24, rust-cbindgen-0.19, sniffglue, tectonic, treefmt, hex, tokei, vivid, watchexec, rbw, rust-analyzer, rust-cargo-c, rtss, skim, skim-0.7, svd2rust, swayhide, tealdeer, git-absorb, zoxide, htmlq), * gnu/packages/sequoia.scm (sequoia-sqv), * gnu/packages/syndication.scm (newsboat), * gnu/packages/terminals.scm (alacritty), * gnu/packages/text-editors.scm (kak-lsp, parinfer-rust), * gnu/packages/tree-sitter.scm (tree-sitter-cli), * gnu/packages/video.scm (rav1e), * gnu/packages/web.scm (monolith, castor) [arguments]: Enable tests.
2023-10-18build: cargo-build-system: Strip enough prefix in package.Efraim Flashner
* guix/build/cargo-build-system.scm (package): When using the source as the packaged crate also strip the 'rust-' prefix.
2023-10-18build: cargo-build-system: Reset timestamps in crates.Efraim Flashner
This fixes reproducibility in rust crates from the package phase, see <https://issues.guix.gnu.org/50015>. * guix/build/cargo-build-system.scm (package): After running 'cargo package' on the source unpack the tarball, reset the timestamps and repack it.
2023-10-18build: cargo-build-system: Check for pregenerated files.Efraim Flashner
* guix/build/cargo-build-system.scm (check-for-pregenerated-files): New procedure. (%standard-phases): Add 'check-for-pregenerated-files phase between 'unpack and 'unpack-rust-crates.
2023-10-17guix: import: opam: Handle list of licenses.Josselin Poiret
Fixes <https://issues.guix.gnu.org/issue/66461>. Reported by Simon Tournier <zimon.toutoune@gmail.com>. * guix/import/opam.scm (opam->guix-package): Handle lists of licenses. Signed-off-by: Simon Tournier <zimon.toutoune@gmail.com>
2023-10-17scripts: weather: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/weather.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: upgrade: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/upgrade.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: time-machine: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/time-machine.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: substitute: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/substitute.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: system: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/system.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: style: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/style.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: size: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/size.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: show: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/show.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: shell: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/shell.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: search: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/search.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: repl: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/repl.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: remove: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/remove.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: refresh: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/refresh.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: pull: Handle EPIPE errors when displaying help.Simon Tournier
Reported by Mathieu Othacehe <othacehe@gnu.org>. * guix/scripts/pull.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: publish: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/publish.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: processes: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/processes.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: package: Handle EPIPE errors when displaying help.Simon Tournier
Reported by Mathieu Othacehe <othacehe@gnu.org>. * guix/scripts/package.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: pack: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/pack.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: offload: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/offload.scm (guix-offload): Handle EPIPE errors when displaying help.
2023-10-17scripts: locate: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/locate.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: lint: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/lint.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: install: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/install.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: import: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/import.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: home: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/home.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: hash: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/hash.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: graph: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/graph.scm (%options): Handle EPIPE errors when displaying help.