Commit graph

141922 commits

Author SHA1 Message Date
Ludovic Courtès
724c1a120a
build-system/gnu: ‘package-with-extra-configure-variable’ uses gexps.
This is required in cases where P uses gexps.

* guix/build-system/gnu.scm (package-with-extra-configure-variable): Use
gexps.

Change-Id: If5cbabc946cfcaf39c040a79f9495760639d44e2
2024-08-31 10:44:22 +02:00
Ludovic Courtès
745177cea5
gnu: gcc@7: Allow compilation with glibc 2.38.
* gnu/packages/patches/gcc-7-libsanitizer-fsconfig-command.patch: New
file.
* gnu/packages/gcc.scm (gcc-7)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.

Change-Id: Ifa273b92573281c34d83e5fb8cd68734ef02c7fd
2024-08-31 10:44:22 +02:00
Ludovic Courtès
e7fdcffc73
gnu: binutils: Update to 2.41.
* gnu/packages/base.scm (binutils): Update to 2.41.
[properties]: Remove.
[native-inputs]: New field.
(binutils+documentation): Remove.
(binutils-2.33)[native-inputs]: New field.
(binutils-gold): Inherit from BINUTILS.
[native-inputs]: Use ‘modify-inputs’ to preserve BISON.
* gnu/packages/commencement.scm (binutils-boot0)[arguments]: Pass
‘--disable-gprofng’.
[native-inputs]: New field.
(binutils-final): Move below ‘libstdc++’.
[native-inputs]: New field.
[arguments]: Add libstdc++ to #:allowed-references.
Extend #:configure-flags to libstdc++ is found.

Change-Id: I72750ca46ffd484d26608c4cec2931edb06b19a5
2024-08-31 10:44:22 +02:00
Maxim Cournoyer
8224555802
man-db: Add support for zstd compressed man pages.
* guix/man-db.scm: Autoload zlib and zstd modules.
(<mandb-entry>): Adjust comment.
(abbreviate-file-name): Adjust regexp.
(gz-compressed?, zstd-compressed?): New predicates.
(entry->string): Use them.
(man-page->entry): Adjust doc.  Use input port reader appropriate to the
compression type, if any.
(man-files): Adjust regexp.
(mandb-entries): Adjust link resolving predicate.
* guix/profiles.scm (manual-database): Add guile-zlib extension.

Change-Id: I6336e46e2d324c520a7d15d6cafd12bbf43c5b09
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 10:44:22 +02:00
Maxim Cournoyer
dfd18d0d75
build: gnu-build-system: Compress man pages with zstd.
The aim is to improve the efficiency of computing the man pages database,
which must decompress the man pages.  Zstd is faster than gzip, especially for
decompression, and has a similar compression ratio.

* gnu/packages/commencement.scm (%final-inputs): Add zstd.
* guix/build/gnu-build-system.scm
(compress-documentation) Update doc.
<info-compressor, info-compressor-flags, man-compressor, man-compressor-flags>
<man-compressor-file-extension>: New arguments.
<compressed-documentation-extension>: Rename argument to...
<info-compressor-file-extension>: ... this.  Add an 'extension' argument to
the retarget-symlink nested procedure.  Use new arguments in nested
'maybe-compress' procedure.

Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: Ibaad4658f8e5151633714d263d9198f56d255020
2024-08-31 10:44:22 +02:00
Maxim Cournoyer
c9666c120b
packages: Repack patched source archives via zstd by default.
* guix/build/utils.scm (compressor): Register zst file name extension.
* guix/packages.scm (%standard-patch-inputs): Add zstd.
(patch-and-repack): Rename tarxz-name nested procedure to tar-file-name, and
accept a new 'ext' argument; adjust accordingly.  Add zstd binding, and
replace the XZ_DEFAULTS environment variable with ZSTD_NBTHREADS.  Fallback to
xz when zstd is not available.

Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I614a6be8c87a4a0858eadce616c51d8e9b9fc020
2024-08-31 10:44:22 +02:00
Maxim Cournoyer
8e57c5d1f3
compression: Enable zstd parallel compression.
* gnu/compression.scm (%compressors) [zstd]: Provide the --threads argument.

Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I4e8dfe725d1b0721c0016c3013b9e609fee94367
2024-08-31 10:44:22 +02:00
Maxim Cournoyer
e91478e911
utils: Lower xz compression memory usage limit to 20%.
There were sometimes out of memory errors on the Berlin build farm, especially
for i686 or arm machines having less memory.

* guix/build/utils.scm (%xz-parallel-args): Reduce --memlimit value from 50%
to 20%.

Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: If848bed92ef4c42d11a96057e59ee51a019d0573
2024-08-31 10:44:21 +02:00
Ludovic Courtès
c48f446444
gnu: rust: Run linker under C.UTF-8 instead of en_US.UTF-8.
This is a followup to 02d21712be1eb31a917313662b924763e81affb3.

* gnu/packages/rust.scm (rust-1.55)[arguments]: In
‘set-linker-locale-to-utf8’, change to C.UTF-8.

Change-Id: I94f27123ca8ac4761fd9bae6267c3a9d122b3a1d
2024-08-31 10:44:21 +02:00
Ludovic Courtès
6b995da47a
build-system/mix: Remove #:glibc-utf8-locales parameter.
* guix/build-system/mix.scm (default-glibc-utf8-locales): Remove.
(lower): Remove #:glibc-utf8-locales and its use.

Change-Id: Ibc8e00fb19e7c3404999e53855660ea11b9825af
2024-08-31 10:44:21 +02:00
Ludovic Courtès
e360a0da34
build-system/gnu: Make ‘%gnu-build-system-modules’ alias public.
This is a followup to a004c80cc04f535d1a74f72edea86173bc32d297, which
had no effect.

* guix/build-system/gnu.scm (%gnu-build-system-modules): Make public.

Change-Id: I2ac44060e530bc9abfe0ee3abbb586853a30ead2
2024-08-31 10:44:21 +02:00
Maxim Cournoyer
e3a0424136
gnu: nettle: Update to 3.9.1.
* gnu/packages/nettle.scm (nettle): Update to 3.9.1.

Change-Id: I21726f9763159e497f91c037ccd10a62c8b71cb5
2024-08-31 10:44:21 +02:00
Maxim Cournoyer
56ef338355
gnu: libpng: Update to 1.6.39.
* gnu/packages/image.scm (libpng): Update to 1.6.39.

Change-Id: Ia851ed5fb00dc8f34e248d2f0020bea06c6e78af
2024-08-31 10:44:21 +02:00
Ludovic Courtès
4fd32212a3
gnu: gmp: Fix typo in ‘ungexp-splicing’.
* gnu/packages/multiprecision.scm (gmp)[arguments]: Fix typo in
‘ungexp-splicing’ read syntax.

Change-Id: I0b3bf1fe9d4429d87c466685b1c8055061b7473f
2024-08-31 10:44:21 +02:00
Ludovic Courtès
0678ca426d
Revert "gnu: coreutils: Disable 64-bit time_t on 32-bit systems."
This reverts commit 4eebb73295.

The ‘--disable-year2038’ flag appears to be unnecessary (tested on
i686-linux).  More importantly, it’s potentially harmful as it could
prevent rebuilds after year 2038 due to timestamp inconsistencies as
they wrap around, and could make the tools unusable altogether.

Change-Id: Iad828d38f84bd1824b83731ac3a3897da4b8b6d3
2024-08-31 10:44:20 +02:00
Ludovic Courtès
da26b34b0f
gnu: gawk: Update to 5.3.0.
* gnu/packages/gawk.scm (gawk): Update to 5.3.0.

Change-Id: Ib1e64d3ed08eb6564ed1ce32ec31ad6492886c92
2024-08-31 10:44:20 +02:00
Ludovic Courtès
9b262900fc
gnu: ed: Update to 1.19.
* gnu/packages/text-editors.scm (ed): Update to 1.19.

Change-Id: I69f4c9cbcf5c862cbffb6d82662c548591917d88
2024-08-31 10:44:20 +02:00
Ludovic Courtès
453b802d1d
search-paths: Swap $C_INCLUDE_PATH and $CPLUS_INCLUDE_PATH.
The variable name didn’t match the ‘variable’ value.

* guix/search-paths.scm ($CPLUS_INCLUDE_PATH, $C_INCLUDE_PATH): Swap.

Change-Id: I181cd259dc8778ed51ea891bf7a345df89e5b6d8
2024-08-31 10:44:20 +02:00
Maxim Cournoyer
42aad100af
gnu: gmp: Update to 6.3.0 and streamline definition.
* gnu/packages/multiprecision.scm (gmp): Update to 6.3.0.  Fix indentation.
[arguments]: Use gexps.  Remove obsolete phase.

Change-Id: I99a0c8173ebc4a4a45512771ccf17782d6ddfe14
2024-08-31 10:44:20 +02:00
Maxim Cournoyer
935470e13c
gnu: imagemagick/stable: Fix ungexp variable.
* gnu/packages/imagemagick.scm (imagemagick/stable)
[arguments]: Ungexp reference to NAME variable.

Reported-by: Simon South <simon@simonsouth.net>
Change-Id: Id0584b35ede05ef14e957b2b2c9c754d9f9c0a90
2024-08-31 10:44:20 +02:00
Maxim Cournoyer
7963b0b3c9
gnu: python-boot0: Name it eponymously.
* gnu/packages/commencement.scm (python-boot0) [name]: Override name.

Change-Id: I00f3a07e9aea9fae3e2ce9c571fa06a95c9bcdb1
2024-08-31 10:44:20 +02:00
Maxim Cournoyer
905256af76
build: agda-build-system: Do not rely on "locales" being present.
A "locales" package is no longer included in the 'standard-packages'
collection, per commit de9d6d12 (gnu: commencement: Remove
‘glibc-utf8-locales’ from ‘%final-inputs’."), which is made because glibc now
embeds a C.UTF8 locale.

* guix/build-system/agda.scm (lower): Remove "locales" implicit input.
* guix/build/agda-build-system.scm (set-locpath): Do not fail when a locales
package is not available.

Change-Id: If14e074e457c625960d70fcaf46c7e829d5d58d1
2024-08-31 10:44:19 +02:00
Maxim Cournoyer
2301a580e5
build: guile-build-system: Remove "locales" implicit input.
This error was introduced by the removal of "locales" from the
standard-packages in commit de9d6d12 (gnu: commencement: Remove
‘glibc-utf8-locales’ from ‘%final-inputs’."), which is made because glibc now
embeds a C.UTF8 locale.

* guix/build-system/guile.scm (lower): Remove the "locales" implicit input.

Change-Id: Id28a95757309aba6a6be89b2c8a6e08847e35f58
2024-08-31 10:44:19 +02:00
Maxim Cournoyer
9be6c34ce7
gnu: imagemagick/stable: Update to 6.9.12-4 and use gexps.
* gnu/packages/imagemagick.scm (imagemagick/stable): Update to 6.9.12-4.
[arguments] Use gexps, strip trailing #t in phases.
[inputs]: Remove labels and sort.

Change-Id: I3c97868a663c44efedcea40a99af933cecb50549
2024-08-31 10:44:19 +02:00
Gabriel Wicki
fc1aa48eb7
gnu: Fix imagemagick webp related failures.
This fixes #48018, as suggested by Saku Laesvuori on the issue tracker.

* gnu/packages/imagemagick.scm (imagemagick/stable)[inputs]: Add libwebp.

Change-Id: I3c02d0fb6c421f7d865b19af359e20068d00b60a
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-08-31 10:44:19 +02:00
Ludovic Courtès
9f31674fa0
gnu: make: Update to 4.4.1.
* gnu/packages/base.scm (gnu-make): Update to 4.4.1.

Change-Id: I0caff2d3ea008e627544728646fcb066b69775f0
2024-08-31 10:44:19 +02:00
Ludovic Courtès
563538a4e2
gnu: diffutils: Update to 3.10.
* gnu/packages/base.scm (diffutils): Update to 3.10.
* gnu/packages/patches/diffutils-fix-signal-processing.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove it.

Change-Id: I795fa93938f8723090887d33574baa1a392ef42e
2024-08-31 10:44:18 +02:00
Ludovic Courtès
5f238e3e36
gnu: grep: Update to 3.11.
* gnu/packages/base.scm (grep): Update to 3.11.

Change-Id: Ia9d8d4748ab4faffee1f013d55000e11c6b86c11
2024-08-31 10:44:18 +02:00
Ludovic Courtès
b67764c83b
gnu: libunistring: Update to 1.1.
* gnu/packages/libunistring.scm (libunistring): Update to 1.1.

Change-Id: I84dadada119ea4054078e0c9da5cb55d749ef18a
2024-08-31 10:44:18 +02:00
Ludovic Courtès
7032794646
gnu: xz: Update to 5.4.5.
* gnu/packages/compression.scm (xz): Update to 5.4.5.

Change-Id: Ic9b4a19ebe92c2d81fd89d01febf115a69e4adbd
2024-08-31 10:44:18 +02:00
Ludovic Courtès
710cad69ff
gnu: zlib: Update to 1.3.
* gnu/packages/compression.scm (zlib): Update to 1.3.

Change-Id: I4addb22798308819198da18a093581bdb2c4f22d
2024-08-31 10:44:18 +02:00
Ludovic Courtès
a17d2fd464
gnu: libgc: Update to 8.2.4.
* gnu/packages/bdw-gc.scm (libgc): Update to 8.2.4.

Change-Id: If1c6cb52d3ab6f9324c3a80c392c741968f8e2a9
2024-08-31 10:44:17 +02:00
Efraim Flashner
688adbf437
gnu: icedtea-8: Don't build the docs.
* gnu/packages/java.scm (icedtea-8)[arguments]: Add a configure-flag to
skip building the docs.

Change-Id: I4a8cfb869cf38bc879ea72a85e0e783a4a759500
2024-08-31 10:44:17 +02:00
Efraim Flashner
71aef8cbcd
gnu: icedtea-8: Fix building on powerpc-linux.
* gnu/packages/java.scm (icedtea-8)[arguments]: When building for
powerpc-linux add a configure-flag to skip the java flight recorder.

Change-Id: I3b9e137c82766507c46ba7a54dff64c3c50c3685
2024-08-31 10:44:17 +02:00
Ludovic Courtès
8fbae8edf9
gnu: libwebp: Ungraft.
* gnu/packages/image.scm (libwebp): Update to 1.3.2.
[replacement]: Remove.
(libwebp/fixed): Remove.

Change-Id: I39c0e5f9df82322dc8dc0ed6341f08c1ac0749b3
2024-08-31 10:44:17 +02:00
Greg Hogan
43c6a4ea68
gnu: flac: Update to 1.4.3.
* gnu/packages/xiph.scm (flac): Update to 1.4.3.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 10:44:17 +02:00
Bruno Victal
7f50bd17a9
gnu: docbook-dsssl: Fix script installation path.
* gnu/packages/docbook.scm (docbook-dsssl)[source]: Fix script permission.
[arguments]<#:install-plan>: Install script and manpage correctly.
[inputs]: Add perl.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 10:44:17 +02:00
Bruno Victal
cdfbb6240f
gnu: docbook-dsssl: Refactor install-plan.
Replace custom phase with copy-build-system newly added #:output parameter.
Additionally remove extra slashes from license URIs and obsolete inputs.

* gnu/packages/docbook.scm (docbook-dsssl)[source]: Remove empty directories
from source using a snippet.
[arguments]<#:phases>: Relocate 'install-doc logic into …
<#:install-plan>: … here. Remove obsolete exclusion rules.
[native-inputs]: Remove bzip2 and tar since these are already available by
default.
[license]: Remove extraneous slash.
(docbook-dsssl-doc)[license]: Remove extraneous slash.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 10:44:16 +02:00
Bruno Victal
b3d5e2d252
build: copy-build-system: Allow specifying different output labels.
* guix/build/copy-build-system.scm: Introduce '#:output' parameter to specify
which output label to use for a given rule.
* doc/guix.texi (Build Systems): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 10:44:16 +02:00
Ludovic Courtès
ccb4a92c34
gnu: openssl@1.1: Ungraft.
* gnu/packages/tls.scm (openssl-1.1): Update to 1.1.1u.
[replacement]: Remove.
(openssl/fixed): Remove.

Change-Id: Idd77b57276ea132eee8c2c3fe801150c7789ac59
2024-08-31 10:44:16 +02:00
Ludovic Courtès
052d12f040
gnu: guile-gnutls: Update to 4.0.0.
* gnu/packages/tls.scm (guile-gnutls): Update to 4.0.0.
[source]: Remove “gnutls-cross.patch”.
[arguments]: Add #:make-flags.
* gnu/packages/patches/gnutls-cross.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.

Change-Id: Ic4432e2d5ca37af5aa20cdf7e4e456afe2b37537
2024-08-31 10:44:16 +02:00
Ludovic Courtès
45d66ce8e9
gnu: ghostscript: Ungraft.
* gnu/packages/ghostscript.scm (ghostscript)[source]: Fold extra
patches.
[replacement]: Remove.
(ghostscript/fixed): Remove.

Change-Id: I116d49c308223207382337395a1c6cba83508a0e
2024-08-31 10:44:16 +02:00
Ludovic Courtès
9ebaf6518a
gnu: cups-minimal: Ungraft.
* gnu/packages/cups.scm (cups-minimal): Update to 2.4.7.
[replacement]: Remove.
(cups-minimal/fixed): Remove.

Change-Id: I6359cec26fc5c1fa134c61c76f2fe8581d646ad6
2024-08-31 10:44:13 +02:00
Ludovic Courtès
671db7471e
gnu: gnutls: Ungraft.
* gnu/packages/tls.scm (gnutls): Update to 3.8.3.
[replacement]: Remove.
[home-page]: Adjust.
(gnutls/fixed): Remove.

Change-Id: I592161764ca152140c777625ea6165ca0e31af03
2024-08-31 10:42:49 +02:00
Ludovic Courtès
f6a77c1ab2
build-system/gnu: Turn PID 1 into an “init”-style process by default.
Fixes <https://issues.guix.gnu.org/30948>.

* guix/build/gnu-build-system.scm (separate-from-pid1): New procedure.
(%standard-phases): Add it.
* guix/build-system/gnu.scm (gnu-build): Add #:separate-from-pid1? and
honor it.
(gnu-cross-build): Likewise.

Reported-by: Carlo Zancanaro <carlo@zancanaro.id.au>
Change-Id: I6f3bc8d8186d1a571f983a38d5e3fd178ffa2678
2024-08-31 10:42:49 +02:00
Ludovic Courtès
6538474df7
gnu: glibc: Add patch for ‘ucontext’ on x86_64-gnu (GNU/Hurd).
Suggested by Sergey Bugaev.

* gnu/packages/patches/glibc-2.38-hurd-ucontext.patch: New file.
* gnu/packages/base.scm (glibc)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.

Change-Id: Ib74e93f2414eda2ec4b3e01fc2bb67b02838fabb
2024-08-31 10:42:49 +02:00
Ludovic Courtès
6a554dbc0d
gnu: glibc-utf8-locales: Add the C.UTF-8 locale.
* gnu/packages/base.scm (%default-utf8-locales): Add "C".
(make-glibc-utf8-locales): Delete "C" from LOCALES for glibc versions
lower than or equal to 2.35.

Change-Id: I6a6faa68dc18bf0f87c372109a17f476d3561278
2024-08-31 10:42:49 +02:00
Ludovic Courtès
b089f95f14
packages: Output and error ports are line-buffered in ‘patch-and-repack’.
* guix/packages.scm (patch-and-repack): Add ‘setvbuf’ calls.

Change-Id: I039bb6407263d5172bf0bc716bda6860dc2615fb
2024-08-31 10:42:49 +02:00
Ludovic Courtès
949ee85019
profiles: Use C.UTF-8 instead of ‘glibc-utf8-locales’ where possible.
This is a followup to 1cebc334a77030c0c94955981652f4df7608c9e3.

* guix/profiles.scm (ca-certificate-bundle)[libc-utf8-locales-for-target]:
Remove.
[build]: Use “C.UTF-8” instead of “en_US.utf8”.
(profile-derivation)[libc-utf8-locales-for-target]: Remove.
[set-utf8-locale]: Rewrite to a gexp that calls ‘setlocale’ for “C.UTF-8”.
* tests/profiles.scm ("profile-derivation, cross-compilation"): Remove
‘locales’ variable and related check.

Change-Id: I7cb148b9149fe5fbe5b9b1b25fdce1002ad1f37e
2024-08-31 10:42:49 +02:00
Ludovic Courtès
92727f4af5
gnu: commencement: Remove ‘glibc-utf8-locales’ from ‘%final-inputs’.
* gnu/packages/commencement.scm (%boot5-inputs): Make an alias for
‘%boot4-inputs’.
(with-boot5): Turn into an alias for ‘with-boot4’.
(%final-inputs): Override ‘native-inputs’ of GAWK.  Remove "locales"
entry.
(canonical-package): Add “glibc-utf8-locales” entry.
* gnu/packages/base.scm (libc-utf8-locales-for-target): Use
‘canonical-package’.
* gnu/packages/gawk.scm (gawk)[native-inputs]: New field.
* gnu/packages/texinfo.scm (texinfo)[native-inputs]: Add
‘libc-utf8-locales-for-target’.

Change-Id: I2283ffc6c6000c98ad2db89c04d581e050667c94
2024-08-31 10:42:49 +02:00