1
0
forked from tribes/guix
Commit Graph

8500 Commits

Author SHA1 Message Date
Nicolas Graves 6df00a88c0 build-system: pyproject: Remove reference to python-build-system.
* guix/build-system/pyproject.scm (%pyproject-build-system-modules):
Replace %python-build-system-modules by %default-gnu-imported-modules.

Change-Id: Ifee0564b61d15a022dc22afe437567d86034c81b
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-04-16 09:42:50 +01:00
jgart 0d11c221b8 guix: scripts: gc: Give better error reporting when attempting to vacuum.
* guix/scripts/gc.scm (%options): Error out when a non-root user tries
to vacuum the database.

Change-Id: Iee7d626c43980640aa91a3ceeb95675016932c55
Signed-off-by: jgart <jgart@dismail.de>
2026-04-15 17:56:23 -04:00
Nguyễn Gia Phong 05e669ac50 guix: Implement fossil-download.
* guix/fossil-download.scm: New file.
* guix/build/fossil.scm: New file.
* Makefile.am (MODULES): Add them.
* etc/teams.scm (core)[#:scope]: Add "guix/fossil-download.scm".
(vcs)[#:scope]: Add "guix/build/fossil.scm".
* CODEOWNERS: Regenerate file.
* doc/guix.texi (origin Reference): Document fossil-fetch
and fossil-reference.
* NEWS: Add entry about fossil-fetch.

Change-Id: Ia252bcbbb417159a842d5092a937e2aad55a1656
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-04-15 23:10:25 +02:00
Nicolas Goaziou 2434428c28 guix: texlive build system: Relax Metafont requirement.
* guix/build/texlive-build-system.scm (generate-font-metrics): Cater for
texlive-metafont both as a native input and as an argument from texlive-local-tree.

Change-Id: I32dd86d49ebcb49efd2a253c0491926e0333d3f4
2026-04-12 23:15:28 +02:00
Nicolas Goaziou 2d7f403979 guix: Generate TeX Live profiles reproductibly.
Fixes: https://issues.guix.gnu.org/73295

* guix/profiles.scm (texlive-font-maps): Do not use mktexlsr command.

Change-Id: I91710740d7f467a236cc82ceca560b0f51a4094d
2026-04-12 23:15:28 +02:00
Nicolas Goaziou 8d3cb0bfa1 guix: texlive importer: Handle additional licenses.
* guix/import/texlive.scm (string->license): Handle additional licenses.

Change-Id: Idb89ef4b3f9ba52a404caa4cc7f4a61d4e1201e6
2026-04-12 23:15:27 +02:00
Nicolas Goaziou 33555b672b guix: texlive importer: Refresh texlive-source properly.
* guix/import/texlive.scm (texlive->svn-multi-reference): Rename to...
(texlive->svn-reference): ... this.
(tlpdb->package): Handle "texlive-source" specifically.
(package-from-texlive-repository?):
* guix/upstream.scm (package-update/svn-fetch): New variable.
(%method-updates): Extend with the previous function.
(update-package-source): Also update svn-reference objects.

Change-Id: Iaa988e5e3c401ea933720127bfc3046aa70935f4
2026-04-12 23:15:27 +02:00
jgart e61b99dfb1 import: gem: Warn when rubygems-fetch fails.
* guix/import/gem.scm: Use (guix diagnostics) and (guix i18n).
(gem->guix-package): Emit a warning when rubygems-fetch returns #f.

Change-Id: I838cb77470ebb35f2065be7772fcd87647153ea8
Signed-off-by: jgart <jgart@dismail.de>
2026-04-11 22:17:35 -04:00
Noé Lopez 1078e42a60 tests: Fix non-deterministic AppImage tests.
The tested AppImages were not actually relocatable and would rely on items
being available on the environment’s store (apart from glibc).

* guix/scripts/pack.scm (wrapped-manifest): New function.
(guix-pack): Extract relocatable manifest to wrapped-manifest.
* tests/pack.scm: Use relocatable profiles in AppImage tests.

Fixes: <https://issues.guix.gnu.org/76850>
Change-Id: Ib3123054913fce903d215dc0629d806e9fceebc7
Reported-by: Reepca Russelstein <reepca@russelstein.xyz>
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-04-10 18:24:56 -07:00
Noé Lopez 3cbd6bd79c gnu: appimage-type-2-runtime: Update to continuous-1.caf24f9.
The runtime-fuse3 binary was renamed to runtime.

* gnu/packages/appimage.scm (appimage-type2-runtime):
Update to continuous-1.caf24f9.
* guix/scripts/pack.scm (self-contained-appimage):
[runtime-path]: Use new runtime name.

Change-Id: Ibbb1fcb6ca914764c37addb62c8234b49cc93bd5
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-04-10 18:24:53 -07:00
Efraim Flashner 8e32c51bd6 download: Remove some KDE mirrors.
* guix/download.scm (%mirrors): Remove some dead mirrors.

Change-Id: I07b59a6c8d3e83aa71a040a542850041a0562244
2026-04-10 11:55:35 +03:00
Efraim Flashner f2d61f4b04 download: Update Sourceforge mirrors.
* guix/download.scm (mirrors)[sourceforge]: Update mirror list.

Change-Id: I187fd0022557cddd908404b5d2442a02d7eb1f30
2026-04-10 11:19:02 +03:00
Nicolas Graves 4c7a7a1d49 tests: keys: Moving to openpgp subdirectory.
* tests/keys/*.(pub|sec): Move to tests/keys/openpgp/*.(pub|sec)
* build-aux/test-env.in: Adapt accordingly.
* Makefile.am: Likewise.
* guix/tests/gnupg.scm: Likewise.
* tests/guix-authenticate.sh: Likewise.
* tests/openpgp.scm: Likewise.

Change-Id: If8897cec9851cc51a4ebadcc5927dc0e0520b881
Reviewed-by: Danny Milosavljevic <dannym@friendly-machines.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-04-10 14:55:04 +09:00
Nicolas Graves 4cbd5f883d guix: openpgp: Refactor openpgp-fingerprint->bytevector.
Both (guix channel) and (guix git-authenticate) use similar procedures.
To refactor the one in (guix git-authenticate), move the procedure
to (guix openpgp).

* guix/channels.scm: Replace autoloaded import
  openpgp-public-key-fingerprint with openpgp-fingerprint->bytevector.
  (openpgp-fingerprint->bytevector):
  Move function definition from here...
* guix/openpgp.scm (openpgp-fingerprint->bytevector): ...to here.
* guix/git-authenticate.scm (read-authorizations):
  Use openpgp-fingerprint->bytevector.
* guix/scripts/git/authenticate.scm:
  Avoid using the (guix channels) module.
* tests/git-authenticate.scm : Likewise.

Change-Id: Ifd20588fcfaab601990098bd8575ee985e87394a
Reviewed-by: Danny Milosavljevic <dannym@friendly-machines.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-04-10 14:46:59 +09:00
Nicolas Graves 1617972225 guix: git-authenticate: Migrate to (srfi srfi-71).
* guix/git-authenticate.scm (commit-signing-key):
  Use srfi-71 instead of srfi-11 in case of multiple values.

Change-Id: I6a35880bc97385b4424b7218a757c226e044555c
Reviewed-by: Danny Milosavljevic <dannym@friendly-machines.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-04-10 14:45:04 +09:00
Efraim Flashner a547fa8e77 guix: lint: Disallow more word patterns.
* guix/lint.scm (check-description-style): Add more entries to the
check-description-typo list.

Change-Id: Idb266bdc3f5b28ae353124b7e615a399bfd97ce7
2026-04-09 11:38:27 +03:00
Ludovic Courtès d41a383ef2 svn-download: Add missing module import for SWH fallback.
Fixes a regression introduced in ad8d386168,
where a call to ‘u8-list->bytevector’ was introduced without the
corresponding (rnrs bytevectors) import.

* guix/svn-download.scm (svn-fetch-builder): In gexp, add missing (rnrs
bytevectors) import.

Change-Id: I38a29d94a4645ff24ef44a84196a6040945776b8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7674
2026-04-07 13:26:20 +02:00
Ludovic Courtès 95ac807edf guix system: Make ‘--save-provenance’ effective for images.
Previously ‘--save-provenance’ would be silently ignored for ‘guix system
image’.

* guix/scripts/system.scm (image-with-provenance): New procedure.
(process-action): In ‘transform’, add case for ‘image?’, and emit a warning in
the default case.

Change-Id: I5020a4b3dacbe7a0820a3c4779b7d86a8133bd60
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7485
2026-04-04 00:30:52 +02:00
Ricardo Wurmus b12b1545cf build-system/r: Make test directory configurable.
Previously we would accept the #:test-directory argument but ignore the value.

* guix/build-system/r.scm (r-build): Set default value for TEST-DIRECTORY
field.
* guix/build/r-build-system.scm (patch-tests): Use value of TEST-DIRECTORY
argument.

Change-Id: If435577bc0e90ede360ee281ee5bc27fa1b0b3f0
2026-04-02 07:37:05 +02:00
Ricardo Wurmus 7a68ab3a73 import/cran: Use SPAWN instead of SYSTEM*.
With SYSTEM* we see a file descriptor leak.  See the discussion at
<https://codeberg.org/guix-science/guix-cran-scripts/issues/5>.  There is no
such leak when using SPAWN.

* guix/import/cran.scm (fetch-description-from-tarball, source->dependencies):
Use SPAWN instead of SYSTEM*.

Change-Id: Idb13f775317e6d5d426f8675e169f0ebbe246fe2
2026-03-31 18:44:30 +02:00
Efraim Flashner 3691bb640d build: cargo: Separate the phases more distinctly.
* guix/build/cargo-build-system.scm (prepare-rust-crates): New phase.
(unpack-rust-crates): Move old functionality to prepare-rust-crates.
Take unpacking functionality from the configure phase.
(%standard-phases): Add prepare-rust-crates between unpack and
unpack-rust-crates.

Change-Id: Ibc61a6d1de1eab269b021f977440aa3c631ffcf6
Signed-off-by: John Kehayias <john@guixotic.coop>
2026-03-30 10:35:26 +03:00
Ludovic Courtès f0e22ae62c records: Warn about shadowing due to inherited field value bindings.
This is a followup to a7c8e68dc5: this commit
introduced a new binding in the body of field values, which could silently
shadow outer bindings.  This new warning catches potentially unwanted
shadowing.

* guix/records.scm (make-syntactic-constructor)[check-shadowing]: New
procedure.
[wrap-field-value]: Use it.
* tests/records.scm ("define-record-type* & inherited value shadowing"): New
test.

Change-Id: I81ad14cf10da7213e9f8db987c8b0bd4c41acba2
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7424
2026-03-29 22:32:57 +02:00
Ludovic Courtès 365dbc5b1c import: elpa: Gracefully handle invalid ELPA version lists.
Previously version lists containing zeroes would be rejected; furthermore, #f
would be returned even though callers expect a string:

  $ guix refresh emacs-counsel
  guix refresh: Package version for counsel contains non numeric part.
  Backtrace:
  […]
  In guix/utils.scm:
     925:32  5 (_ #f "0.15.1")
  In unknown file:
	     4 (string->pointer #f #<undefined>)
  […]
  guix/ui.scm:920:18: In procedure string->pointer: Wrong type argument in position 1 (expecting string): #f

* guix/import/elpa.scm (elpa-version->string): Accept zeroes in
‘elpa-version’.  Raise an error instead of returning #f on failure.  Clarify
error messages.

Change-Id: I1ab1d6892b434747d91e9090bb5f2f3c93f1ee92
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7484
2026-03-29 22:32:28 +02:00
Hugo Buddelmeijer 3b90fc5b3c refresh: Make --list-updaters fast if web.cvs.savannah.gnu.org is broken.
--list-updaters loops through all packages and all updaters to see whether they
match. The gnu-ftp updater used to use official-gnu-packages to fetch a list of
packages from web.cvs.savannah.gnu.org. official-gnu-packages only caches the
result if it succeeds; but does not cache upon a timout or 5xx status.
official-gnu-packages times out after a minute and is called for all 30k+
packages. refresh --list-updaters could therefore take 30000 minutes. Now
--list-updaters uses official-gnu-packages* (from lint.scm) that memoizes the
result also on failure, thereby limiting the time to 1 minute.

* guix/gnu-maintenance.scm: Add official-gnu-packages* from guix/lint.scm.
Call official-gnu-packages* from gnu-package?
* guix/lint.scm: Move official-gnu-packages* to guix/gnu-maintenance.scm

Change-Id: I5e2e094bfb1042b03db47e119ced0e94b49b417c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #4949
2026-03-29 22:15:30 +02:00
Yarl Baudig 785f4c6ed9 gexp: improve &gexp-input-error with &error-location.
* guix/gexp.scm (gexp->sexp): raise &error-location along &gexp-input-error.
* guix/ui.scm (call-with-error-handling): use this.
* tests/gexp.scm (lower-gexp, invalid input location): New test.

Change-Id: Iee761e5f99502065182d9e6fc8d21399e99ec6c3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7538
2026-03-29 22:11:38 +02:00
Liliana Marie Prikler 5ba1f04a4d build-system: renpy: Drop reliance on python-build-system.
* guix/build/renpy-build-system.scm (enable-bytecode-determinism): New
variable.
(%standard-phases): Replace python:enable-bytecode-determinism with
own variant.
* guix/build-system/renpy.scm (%renpy-build-system-modules):
Drop (guix build python-build-system).

Fixes: guix/guix#7426 (“Migrate `renpy-build-system' to pyproject”)
2026-03-26 06:39:06 +01:00
Ludovic Courtès ea827812f2 channels: Resolve dependencies recursively.
* guix/channels.scm (closure): New procedure.
(resolve-dependencies): Use it.
* tests/channels.scm ("channel-instance-dependency-resolver"): New test.

Fixes: https://issues.guix.gnu.org/68797
Change-Id: Iaba4f54261e33e18bd57a0a319aa099f259b8570
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7137
2026-03-25 23:51:26 +01:00
Andreas Enge 20aaf45aca gnu: Remove python-flit-scm.
* gnu/packages/python-build.scm (python-flit-scm): Delete variable.
* guix/lint.scm (%python-native-inputs): Remove entry.

Fixes: guix/guix#2360
Change-Id: I38040bdff8cd7d74c272abf466897a446ce6d045
2026-03-25 14:54:39 +01:00
Ludovic Courtès 34ead56156 Add (guix amd-gpu).
Moving these definitions to a separate module is necessary to avoid circular
references at the top-level among package modules.

* gnu/packages/rocm.scm (%default-amd-gpu-targets, current-amd-gpu-targets)
(current-amd-gpu-targets-string): Move to…
* guix/amd-gpu.scm: … here.  New file.
* Makefile.am (MODULES): Add it.

Merges guix/guix!7251

Change-Id: I60496fb4d81ea0445ec176add7afc388f6790bd3
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-24 14:21:49 +01:00
ROCKTAKEY 2d7c27d439 import: crate: Add "%" to crate source pattern.
* guix/import/crate/cargo-lock.scm (crate-source all): Add "%" to crate
source pattern.

Change-Id: I964c9c84ca65212c47c065ede140201f03b8bb24
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-23 10:48:27 +02:00
Christopher Baines 2027e83c4b build-system: go: Call gexp->derivation with #:graft? #f.
Like gnu-build, this is important as otherwise the builder script can end up
using grafted outputs, which is wrong as grafting should happen after
building.

This addresses an issue with the go-github-com-quic-go-qpack package where the
builder used the grafted specification-qifs, rather than the normal
derivation/output.

* guix/build-system/go.scm (go-build): Call gexp->derivation with #:graft? #f.

Fixes: guix/guix#6820
Change-Id: I7e02ecc3b16d112cc00140653e0528f5d6681bac
2026-03-21 10:38:18 +00:00
Simon Josefsson bcf39f96b8 ui: Show package version for all package installs
* guix/ui.scm (show-manifest-transaction): Include old version in message.

Change-Id: I897ec2d52a1cd4d030929a1adc3458f29c9ae4d4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7133
2026-03-20 22:43:28 +01:00
Sergio Pastor Pérez 385053f296 derivations: Add memoization for ‘map-derivation’.
Implement caching to speed up computation through memoization.

* guix/derivations.scm (map-derivation): Turn ‘loop’ into an ‘mlambdaq’.

Change-Id: I186e2a62f6655e3b0738dd6e0f628faccd8b855e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-20 22:43:28 +01:00
Sergio Pastor Pérez cf2a11b966 derivations: Let ‘map-derivation’ correctly handle directories.
The 'map-derivation' procedure was trying to process directories as files.
When a derivation had a 'module import' directory as input, it threw an
exception since it tried to open it as a file.

* guix/derivations.scm (map-derivation): In ‘sources’, add
‘file-is-directory?’ case.
* tests/derivations.scm ("map-derivation, modules"): New test.

Fixes: https://issues.guix.gnu.org/71941
Change-Id: I9b766f9aaa03ea9307f73e8abb36bc347af4b5e6
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-20 22:43:11 +01:00
Sharlatan Hellseher 3e8ec45750 guix: lint: Add more native-inputs checks.
* guix/lint.scm (%go-native-inputs, %python-native-inputs): New variables.
(check-inputs-should-be-native): Remove python-cython, python-docutils,
python-mock, python-pynose, python-pbr, python-pytest,
python-setuptools-scm, and python-sphinx; append %go-native-inputs,
%python-native-inputs.

Merges: https://codeberg.org/guix/guix/pulls/7278
Change-Id: I905f4ac656d8fbe25fb77792e23efc581f83dc27
Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-03-20 14:11:37 +00:00
Ludovic Courtès 884f79335f build-system/gnu: Use field identifiers to refer to inherited values.
* guix/build-system/gnu.scm (package-with-explicit-inputs/deprecated): In
the field value bodies of inherited packages, use the field name to refer to
the inherited value.
(package-with-explicit-inputs*)[add-explicit-inputs]: Likewise.
(package-with-extra-configure-variable): Likewise.
(static-package): Likewise.
(dist-package): Likewise.
(package-with-restricted-references): Likewise.

Change-Id: I62a95563cbdd48170a674b4995585c8778808b8c
2026-03-20 13:27:16 +01:00
Ludovic Courtès a7c8e68dc5 records: Let thunked fields refer to their inherited value.
* guix/records.scm (make-syntactic-constructor)[field-index]: New procedure.
[wrap-field-value]: Add optional argument ‘parent’.  When it is true, bind F
to the inherited field value.
[field-bindings/inheritance]: New procedure.
Use it.
* tests/records.scm ("define-record-type* & thunked & no inherited value")
("define-record-type* & thunked & inherited value")
("define-record-type* & thunked & inherited value & this-record"): New tests.
* doc/guix.texi (Defining Package Variants): Update ‘modify-inputs’ example to
refer to ‘inputs’.
(Writing Manifests): Likewise.
* doc/guix-cookbook.texi (Package Variants): Likewise for
‘substitute-keyword-arguments’.

Fixes: https://issues.guix.gnu.org/50335
Change-Id: If4e18155ce203637ff9e116ee8098f8997bfebe2
2026-03-20 13:27:15 +01:00
Ludovic Courtès e1457c4679 build-system/gnu: Avoid name clash in ‘package-with-explicit-inputs*’.
With the next commit, ‘inputs’ is bound within the body of the ‘inputs’ field,
which would shadow the ‘inputs’ parameter of ‘package-with-explicit-inputs*’.

* guix/build-system/gnu.scm (package-with-explicit-inputs*): Rename ‘inputs’
parameter to ‘explicit-inputs’ to avoid name class in ‘add-explicit-inputs’.

Change-Id: I5aa70504cc6ffc856728c6e1a715ef68d9ebd7d9
2026-03-20 13:27:15 +01:00
Yelninei 2c41ba0fa1 lint: glibc-locales should not be an input at all.
* guix/lint.scm (check-inputs-should-not-be-an-input-at-all): Add glibc-locales.

Change-Id: Ia762088a35bfda3f665724af915253c9b030d733
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-19 15:32:45 +01:00
Yarl Baudig 80da50edf1 import/elpa: Fix some GNU-devel imports.
elpa-version->string construct the version (needed later to construct the full
package name to fetch the archive...) from the version numbers given as a list
from archive-contents. This list representation is documented in emacs's
version-to-list and version-regexp-alist docstrings.

In these list, A negative integer specify a non-numeric part of a
version. Different non-numeric may lead to the same negative
integer (e.g. 1.2.CVS, 1.2cvs, 1.2_Cvs, ...).

If there is a negative integer, we need to gather more information because the
list version present in archive-contents is not enough to reconstruct the
archive address.

We parse the ATOM feed at elpa.gnu.org/devel/PACKAGE.xml

Tested on all packages. only loc-changes does not have an ATOM feed.

* guix/import/elpa.scm (elpa-version->string): New repo and name arguments,
use version-from-elpa-devel-feed if needed.
(fetch-elpa-package): Upgrade elpa-version->string call.
(latest-release): Same.
(version-from-elpa-devel-feed): New function.

Change-Id: Ic446d81593d9e6422c20a1ac427438e540e963b0
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-19 07:27:20 +01:00
Nicolas Graves efb6ea4e86 guix: clojure-utils: Drop unused @@* macro.
* guix/build/clojure-utils.scm (@@*): Drop macro.

Change-Id: I7ca721f73d8333fb24b8f6b5354e4401bb05042d
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2026-03-18 21:23:06 +01:00
Nicolas Graves fd797d11e3 build-system/clojure: Improve style.
Simply switch to the style that is used in other build-systems.

* guix/build-system/clojure.scm
(%default-clojure): Move from here…
(default-clojure): …to here.
(%default-jdk): Move from here…
(default-jdk): …to here.
(%default-zip): Move from here…
(default-zip): …to here.

Change-Id: Ic31ba1365a6a80e5fa319096bf833d9cf684b3ac
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2026-03-18 21:23:06 +01:00
Nicolas Graves 52ce2e46a7 guix: clojure-utils: Drop duplicate @* macro.
This macro is now defined in (guix build-system) which is also
imported where (guix build clojure-utils) is used.

* guix/build/clojure-utils.scm (@*): Remove variable.

Change-Id: Ifca0e772597ca8978f2281c455c9b9fba64299a1
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2026-03-18 21:22:57 +01:00
Ludovic Courtès c917ece6d9 remote: Print output and error stream in ‘remote-eval’.
Previously, anything written by the remote process to its output and error
ports was lost.  Now it’s properly transferred and displayed.

* guix/remote.scm (trampoline): Direct current output and error ports to a
string output port; return the port’s content in addition to the return value
of ‘primitive-load’.
(%remote-eval): Expect output/error string from ‘read-repl-response’ and
display it line by line.

Fixes: guix/guix#7088
Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I73bc81a08626b3204136b6f1568130f9895d56e3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7092
2026-03-14 16:07:34 +01:00
Ludovic Courtès 0dc5e5e5bd profiles: Use ‘with-imported-modules’.
* guix/profiles.scm (fonts-dir-file)[build]: Wrap in ‘with-imported-modules’.
Remove #:modules argument to ‘gexp->derivation’.

Change-Id: I29d71d0ff61cf8b81796ad412f2f95b111f028a7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:45 +01:00
Ludovic Courtès be88f949b4 profiles: Do not import (srfi srfi-26) from the host Guile.
The problem was made evident by the warnings added in
f650dc0d80.  The extra import was added in
0a5ce0d1df, in 2017.

* guix/profiles.scm (fonts-dir-file): Remove (srfi srfi-26) from #:modules.

Fixes: https://issues.guix.gnu.org/80578
Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I0ad0a380f9c6421f0876aea7f68e1debf38a1db8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:45 +01:00
Ludovic Courtès e812ee2a97 gexp: Properly record location in ‘gexp->derivation’ & co.
* guix/gexp.scm (gexp-with-hidden-inputs): Make the last argument to
‘make-gexp’ a source property alist.
(gexp->derivation): Likewise.

Change-Id: I70fa287ab571f4d791e8633131dd55c74624c18c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:45 +01:00
Christopher Baines e6581cc5f9 store: Export the %default-store-connection-buffer-size.
So it can be used elsewhere, for example where port->connection is used and
there's a need to setup buffering.

* guix/store.scm (%default-buffer-size): Rename to
%default-store-connection-buffer-size.
(connect-to-daemon, open-connection): Update accordingly.

Change-Id: Ieb932577304786e5dee891ad1652e03c388d4112
2026-03-11 15:31:04 +00:00
Ludovic Courtès 4c7f4a0c0e style: git-source: Show package name in message.
* guix/scripts/style.scm (url-fetch->git-fetch)[transform-source]: Show
package name in informative message.

Change-Id: I4533dfcd7abf12c2406c981bcb80b3e634d339bc
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6894
2026-03-10 22:53:55 +01:00
Ludovic Courtès ac9f7dbce6 read-print: Add newline after ‘snippet’ field of ‘origin’.
* guix/read-print.scm (%newline-forms): Add ‘snippet’.

Change-Id: Ibdd654ca68cf9a820b75cdd81e991d747030fa73
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 22:53:55 +01:00