Age | Commit message (Collapse) | Author |
|
Change-Id: I3f5d121162d98ef2ae61a62c4da3b0fd19d864e8
|
|
* guix/packages.scm (%standard-patch-inputs): Use
‘libc-utf8-locales-for-target’ instead of ‘glibc-utf8-locales’.
* guix/self.scm (%packages): Likewise.
* gnu/home/services/ssh.scm (file-join): Likewise
* gnu/installer.scm (build-compiled-file): Likewise.
* gnu/packages/chromium.scm (ungoogled-chromium/wayland): Likewise.
* gnu/packages/gnome.scm (libgweather4, tracker): Likewise.
* gnu/packages/javascript.scm (js-mathjax): Likewise.
* gnu/packages/package-management.scm (guix, flatpak): Likewise.
* gnu/packages/raspberry-pi.scm (raspi-arm64-chainloader): Likewise.
* gnu/packages/suckless.scm (svkbd): Likewise.
* gnu/services.scm (cleanup-gexp): Likewise.
* gnu/services/base.scm (guix-publish-shepherd-service): Likewise.
* gnu/services/guix.scm (guix-build-coordinator-shepherd-services)
(guix-build-coordinator-agent-shepherd-services): Likewise.
* gnu/services/guix.scm (guix-build-coordinator-queue-builds-shepherd-services):
(guix-data-service-shepherd-services)
(nar-herder-shepherd-services)
(bffe-shepherd-services): Likewise.
* gnu/services/web.scm (anonip-shepherd-service)
(mumi-shepherd-services): Likewise.
* gnu/system/image.scm (system-disk-image, system-iso9660-image)
(system-docker-image, system-tarball-image): Likewise.
* gnu/system/install.scm (%installation-services): Likewise.
* guix/profiles.scm (info-dir-file): Likewise.
(ca-certificate-bundle, profile-derivation): Likewise.
* guix/scripts/pack.scm (store-database, set-utf8-locale): Likewise.
* tests/pack.scm: Likewise.
* tests/profiles.scm ("profile-derivation, cross-compilation"):
Likewise.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Co-authored-by: Christopher Baines <mail@cbaines.net>
Change-Id: I24239f427bcc930c29d2ba5d00dc615960a6c374
|
|
Change-Id: I62da840b7600f2d3d8541e666d09e2f2a1b7d8c4
|
|
The paths to .scm and .go files can be constructed given a guile version and a
base directory. However it is few lines of code that needs to be copy&pasted.
This new procedure returns both of them reducing the maintenance cost.
* guix/build/guile-build-system.scm (target-guile-scm+go): New procedure.
Change-Id: I58615f2cfe0ec1e58d3fbb47b738ed5dce1bb252
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
Fixes a bug whereby ‘guix locate --clear’ would end with the “no files
to search for” error.
Fixes <https://issues.guix.gnu.org/66799>.
* guix/scripts/locate.scm (guix-locate): Do not emit “no files to search
for” error when 'clear? is set in OPTS.
* tests/guix-locate.sh: Test it.
Reported-by: Maciej Kalandyk <m.kalandyk@outlook.com>
Change-Id: Ib8fa125c18481d7f5408bd89df9503713527641d
|
|
Change-Id: I88d3789460d1a89917451d80405d89a2824006ac
|
|
* guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to
3.18.
* guix/import/cran.scm (%bioconductor-version): Same.
Change-Id: Ic3fc2e6ab6b5f6f6e55662f81baee67391158c5b
|
|
Change-Id: Ib6f55bebef2fb235fa59fd5442102a3e0ace3191
|
|
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
|
|
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
|
|
The (guix build syscalls) module was unused.
* guix/build-system/dub.scm (%dub-build-system-modules): Remove (guix
build syscalls).
|
|
The (guix build syscalls) module was unused.
* guix/build-system/android-ndk.scm (%android-ndk-build-system-modules):
Remove (guix build syscalls).
|
|
The module has been unused since
a6343af22161b21ddbc4143a2b6a60d1ee860eb0.
* guix/build-system/ant.scm (%ant-build-system-modules): Remove (guix
build syscalls).
|
|
* 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.
|
|
* guix/build-system/go.scm (default-gccgo): New variable.
(lower): Only use default-go when it is supported.
Change-Id: I30564d97703344df582accaf741f4fcd159b6be1
|
|
|
|
* guix/build-system/minify.scm (default-uglify-js): Replace this procedure...
(default-esbuild): ...with this new procedure.
(lower): Use it, and add "esbuild" to build inputs.
* guix/build/minify-build-system.scm (minify): Invoke esbuild instead of
setting up a pipe to uglifyjs.
* gnu/packages/cran.scm (r-shiny)[native-inputs]: Replace node-uglify-js with
esbuild.
* gnu/packages/statistics.scm (r-dt)[native-inputs]: Same.
|
|
Fixes <https://issues.guix.gnu.org/66305>.
Reported by Guillaume Le Vaillant <glv@posteo.net>.
* guix/scripts/perform-download.scm (perform-git-download): Add call to
‘setenv’.
|
|
* guix/scripts/refresh.scm (guix-refresh): Add cascade-sort procedure and use
it to sort specs by package location.
|
|
* guix/search-paths.scm ($C_INCLUDE_PATH, $CPLUS_INCLUDE_PATH)
($LIBRARY_PATH, %gcc-search-paths): New variables.
|
|
* guix/build/meson-configuration.scm (write-assigment): Print true for
#t and false for #f. Previously it was inverting the values.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
|
|
|
|
|
|
* guix/scripts/archive.scm (%options): Replace 'build' by 'archive'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
Perhaps due to their staged nature, packages tend to be ‘lopsided’: deeply
nested, with the most elaborate code on the {build,right-hand-,in}side, in
snippets and phases.
When we indent outer forms too eagerly, we can easily run short on
columns by the time we get to the build code, reducing readability. A
few strategically-placed newlines early on can make a big difference.
* guix/read-print.scm (%newline-forms): Add a newline after opening a
<package> source field or an argument list. Compensate by removing the
base32 special case, which is now unnecessary.
|
|
Fixes <https://issues.guix.gnu.org/63331>.
Longer-term this will remove Git from the derivation graph when its sole
use is to perform a checkout for a fixed-output derivation, thereby
breaking dependency cycles that can arise in these situations.
* guix/git-download.scm (git-fetch): Rename to…
(git-fetch/in-band): … this. Deal with GIT or GUILE being #f.
(git-fetch/built-in, built-in-builders*, git-fetch): New procedures.
* tests/builders.scm ("git-fetch, file URI"): New test.
|
|
* guix/scripts/perform-download.scm (perform-git-download): Pass #:git-command
to ‘git-fetch-with-fallback’.
|
|
* configure.ac: Check for ‘git’ and substitute ‘GIT’.
* guix/config.scm.in (%git): New variable.
* guix/self.scm (compiled-guix): Define ‘git’ and pass it to
‘make-config.scm’.
(make-config.scm): Add #:git; emit a ‘%git’ variable.
* doc/guix.texi (Requirements): Add it.
|
|
The new builder makes it possible to break cycles that occurs when the
fixed-output derivation for the source of a dependency of ‘git’ would
itself depend on ‘git’.
* guix/scripts/perform-download.scm (perform-git-download): New
procedure.
(perform-download): Move fixed-output derivation check to…
(guix-perform-download): … here. Invoke ‘perform-download’ or
‘perform-git-download’ depending on what ‘derivation-builder’ returns.
* nix/libstore/builtins.cc (builtins): Add “git-download”.
* tests/derivations.scm ("built-in-builders"): Update.
("'git-download' built-in builder")
("'git-download' built-in builder, invalid hash")
("'git-download' built-in builder, invalid commit")
("'git-download' built-in builder, not found"): New tests.
|
|
Code in ‘builtins.cc’ only ever invokes ‘guix perform-download’ with two
arguments.
* guix/scripts/perform-download.scm (guix-perform-download): Remove
unused one-argument clause.
(perform-download): Make ‘output’ parameter mandatory; remove ‘output*’
variable.
|
|
* guix/git-download.scm (git-fetch): Honor ‘%download-fallback-test’.
|
|
* guix/build/git.scm (git-fetch-with-fallback): New procedure, with code
taken from…
* guix/git-download.scm (git-fetch): … here.
[modules]: Remove modules that are no longer directly used in ‘build’.
[build]: Use ‘git-fetch-with-fallback’.
|
|
* guix/git/scm (reference-available?): Add 'false-if-git-not-found' for the
case 'commit.
|
|
|
|
Follow-up of 756e336fa008c2469b4a7317ad5c641ed48f25d6 fixing the issue.
* guix/git/scm (reference-available?): Address case by case to determine
whether the reference exists in the local Git checkout.
|
|
Until 209204e23b39af09e0ea92540b6fa00a60e6a0ae and
d57cab764122af69d52d8cc9c843456044e5d7bc, the default image type used by "guix
system image" was an MBR image with an ESP partition.
Having both an MBR image and an ESP partition is handy because the image will
boot on most x86 based systems using legacy BIOS and/or UEFI.
We now have a distinction between MBR images and EFI images. Introduce a new
MBR hybrid image type and default to it to restore the default behaviour.
This also fixes the images section of (gnu ci) that was trying to install a
BIOS bootloader on an EFI, GPT image and failing to do so.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
|
|
This fixes or greatly increases the chances for `guix pull' to succeed on the
Hurd, see <https://issues.guix.gnu.org/65456>.
* guix/self.scm (compiled-modules)[process-directory]: Move hardcoded size to
keyword parameter #:size. Set it to 10 when compiling "guix-packages-base".
|
|
This increases the chances of a successful `guix pull' on the Hurd,
see <https://issues.guix.gnu.org/65456>.
* guix/self.scm (compiled-modules)[process-directory]: Split building of
directories into chunks of max 25 files. Also call gc.
|
|
|
|
The UNCHANGED? comparison would always yield #FALSE, because we have been
comparing lists of strings with lists of symbols.
* guix/upstream.scm (update-package-inputs): Convert string labels to symbols
before comparison.
|
|
* guix/search-paths.scm ($TZDIR): New search path.
|
|
This reinstate commit a5b5df7f7fbbb98487b2e7a59941efee6492bc7f with a fix to
the inner expand-uri procedure.
|
|
This reverts commit a5b5df7f7fbbb98487b2e7a59941efee6492bc7f. Pushed too
early.
|
|
Fixes <https://issues.guix.gnu.org/58697>.
* guix/gnu-maintenance.scm (import-html-updatable-release): Update doc.
<expand-uri>: New nested procedure. Apply it to the origin URI.
Reported-by: kiasoc5 <kiasoc5@disroot.org>
|
|
* guix/transformations.scm (tuned-package): Use either bag-target if
available or bag-system to select the CPU architecture of the package
that is going to be tuned. This enables the tuning of cross-compiled
packages.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
Fixes <https://issues.guix.gnu.org/65832>.
* guix/scripts/shell.scm (authorized-shell-directory?): After warning,
continue LOOP to return valid query result for DIRECTORY.
|
|
"CC=gcc" is almost always incorrect; people often just don't
notice the incorrectness because they are compiling natively.
For an exception, see tzdata.
"guix style" partially made things worse, so I partially ignored it.
* guix/lint.scm (check-compiler-for-target): New linter.
* tests/lint.scm
("compiler-for-target: unconditional CC=gcc is unacceptable")
("compiler-for-target: looks through G-expressions")
("compiler-for-target: (cc-for-target) is acceptable")
("compiler-for-target: CC=gcc is acceptable when target=#false"):
Test it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
* guix/build/emacs-utils.scm (emacs-compile-directory): After native
compilation, write the bytecode file with ‘comp-write-bytecode-file’.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
|