Commit graph

1677 commits

Author SHA1 Message Date
Maxim Cournoyer
013c611a3b
build-system/meson: Make build verbose.
It's useful to see the link directives and other options passed to the
compiler when debugging build issues.

* guix/build/meson-build-system.scm (build): Invoke ninja with its --verbose
option.

Change-Id: Iab11eeb29351a1d6a954576e3a916e2d536058d9
(cherry picked from commit d9b9670b05)
2025-09-29 14:17:26 +02:00
Dariqq
24a77860a3
build-system: meson: Set default wrap-mode to nofallback.
Fixes guix/guix#1162.

This solves two issues: Not having to wait for the network timeout (same as the
nodownload) option and also disabling meson to fall back to predownloaded
subprojects.

If desired, this behaviour can be overridden by adding --wrap-mode=MODE to #:configure-flags.

* guix/build/meson-build-system.scm (configure): Add --wrap-mode=nofallback.

Change-Id: Ibf1d6ac60a4c47cd71574a96ceb8773e6d8cf60b
(cherry picked from commit fe8dded27f)
2025-09-29 14:17:26 +02:00
Giacomo Leidi
40c2edf91b
build-system: mix: Allow passing test flags.
* guix/build-system/mix.scm (mix-build): Add test-flags keyword
argument and pass it on.
* guix/build/mix-build-system.scm (check): Add test-flags keyword
argument and pass it to Mix.

Change-Id: Ib8243aaaf7a7d02df993cee44f33b36566049e83
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-25 22:04:26 +02:00
Nicolas Graves
2d45de1bc4
build-system/pyproject: Handle wheel not found exception.
The current error is very uninformative, use a proper exception to
give more information when this happens:
`In procedure map: Wrong type argument: #f`

After this patch:
`In procedure raise-exception:
ERROR:
  1. &no-wheels-found`

* guix/build/pyproject-build-system.scm (&no-wheels-found): Add exception.
(install): Handle exception.

Change-Id: Ie72d3b50dfededb2d598162672cdb4321c42b632
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:34 +01:00
Nicolas Graves
977caf32ef
build-system/pyproject: Avoid PEP427 substitution on binary files.
In some rare cases, the dest-path can be an elf-file, which are
unreadable by substitute*, leading to an error instead of just
continuing which makes more sense in this case.

* guix/build-system/pyproject.scm (check): Guard substitution attempt
with basic readability guarantees.

Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:34 +01:00
Nicolas Graves
9a40c5145d
build-system/pyproject: Add stestr, unittest and custom options.
* guix/build-system/pyproject.scm (check): Add stestr, unittest and
custom test-backends.

Change-Id: I2d44b3b8dd928ab844b4479fb073afff845e13ee
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:34 +01:00
Nicolas Graves
74a1e9d543
build-system/pyproject: Use copy-recursively instead of merge-dirs.
Using rename-file, the destination had to be empty otherwise it would error
out.  This has been fixed by the use of copy-recursively, really merging them.
Changing this makes merge-directories mostly a duplicate of
copy-recursively, thus fully switch to copy-recursively.

* guix/build/pyproject-build-system.scm (install)
<python-hashbang>: Remove it, used only once.
<merge-directories>: Remove it, replace its calls by copy-recursively
and delete-file-recursively.

Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:34 +01:00
Nicolas Graves
e927a071cd
build-system/pyproject: Add python test-backend.
* guix/build/pyproject-build-system(check): Add python test-backend.

This will help in cases where a simple `python -m module args` call has
to be made instead of fully replacing the 'check phase, e.g. unittest
or django. This is never enabled unless #:test-backend 'python is set,
so it doesn't break anything.

As an example, the following snippet...

(arguments
  (list #:phases #~(modify-phases %standard-phases
                     (replace 'check
                       (lambda* (#:key tests? #:allow-other-keys)
                         (when tests?
                           (invoke "python" "-m" "unittest"
                                   "diff_match_patch.tests")))))))

...can be transformed like this:

(arguments
  '(#:test-backend 'python
    #:test-flags (list "-m" "unittest" "diff_match_patch.tests")))

Change-Id: I4919a3e01d64864e3c328609fbcce7df5b3dfe51
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:33 +01:00
Maxim Cournoyer
7b65bc85cd
build/pyproject: Fix indentation.
* guix/build/pyproject-build-system.scm: Re-indent file with Emacs.

Change-Id: Ie8a119ce9cf4beccffde93674adb98dc07462ea7
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:33 +01:00
Maxim Cournoyer
f3f42af8ae
build/pyproject: Resolve import warning.
* guix/build/pyproject-build-system.scm: Hide the 'delete' symbol from
the imported (guix build utils) module to avoid a naming clash warning.

Change-Id: I48f97bf29b5282de1440c68d533c8300d4d11362
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:33 +01:00
Maxim Cournoyer
1d0493e58d
build/pyproject: Update PEP 427 reference URL in comment.
* guix/build/pyproject-build-system.scm (install): Update reference URL.

Change-Id: Icf5dcc7254c33e8e466773ee66a2fd5648d583da
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:33 +01:00
Maxim Cournoyer
beb6357463
build/pyproject: Really merge directories in install phase.
Using rename-file, the destination had to be empty otherwise it would
error out.  By using copy-recursively, a directory can be copied onto a
pre-existing directory, really merging them.  This problem manifested
itself attempting to build the python-pyre package.

Solving #596.

* guix/build/pyproject-build-system.scm (install)
<merge-directories>: Use copy-recursively instead of rename-file.

Change-Id: Iceb8609a86f29b17e5fbe6a9629339d0bc26e11f
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-09-25 09:35:33 +01:00
Maxim Cournoyer
a7db92d9b3
Revert "Update Maxim's email address."
This reverts commit d0d87a744d. Oops! This
caused a world rebuild.

Change-Id: I25fff644b2b61d0ee93d69b457b04c72b5b74d15
2025-09-18 12:07:31 +09:00
Maxim Cournoyer
d0d87a744d
Update Maxim's email address.
The change was automated via:

  git grep -l maxim.cournoyer@gmail.com |
    xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'

* .mailmap: New entry.

Change-Id: Iaa88b1e51c94159c49138fb43910badb990eb169
2025-09-18 08:05:19 +09:00
Liliana Marie Prikler
6c41e4d180
build: emacs-utils: Add emacs-makeinfo.
* guix/build/emacs-utils.scm (emacs-makeinfo): New variable.
* gnu/packages/emacs-xyz.scm (emacs-show-font, emacs-mct, emacs-corfu)
(emacs-cape, emacs-embark, emacs-orderless, emacs-consult, emacs-marginalia)
(emacs-logos, emacs-tmr, emacs-beframe, emacs-tempel, emacs-lin, emacs-pulsar)
(emacs-dired-preview, emacs-modus-themes, emacs-org-glossary, emacs-vertico)
(emacs-org-margin, emacs-osm)[#:phases]<makeinfo>: Use it.
Move before ‘install’ if it was previously after ‘install’.
2025-09-11 08:46:53 +02:00
Liliana Marie Prikler
2bd3129039
build-system: emacs: Use new lisp-mnt primitives.
* guix/build/emacs-build-system.scm (ensure-package-description)
[%write-pkg-file-form]: Use ‘lm-summary’ and ‘lm-package-requires’.

Fixes: guix/guix#736 (Missing `*-pkg.el` files).
2025-09-11 08:46:52 +02:00
Liliana Marie Prikler
8030c91dc2
build-system: emacs: Error if package file could not be generated.
* guix/build/emacs-build-system.scm (ensure-package-description)
[%write-pkg-file-form]: Use ‘error’ for error reporting.
2025-09-11 08:46:51 +02:00
Brian Kubisiak
325689d036
build-system/tree-sitter: Build with -std=c11.
* guix/build/tree-sitter-build-system.scm (install): Switch to
building with -std=c11.

Fixes: guix/guix#2215
Change-Id: I04f3ede07aeaaa9cf95272611d6346295f603b69
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2025-09-04 02:27:57 +02:00
Reepca Russelstein
f607aaaaaa
download: Handle content-addressed-mirrors returning #f.
* guix/build/download.scm (url-fetch): don't pass the return value from a
  content-addressed-mirror procedure to 'string->uri' if it is #f.

Change-Id: Ic4f94f86fcfebe6f2e60cb3c4330ce57886ab647
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-01 16:13:19 +02:00
Jean-Pierre De Jesus DIAZ
f0560f865a
gnu: tree-sitter: Update to 0.25.3.
* gnu/packages/tree-sitter.scm (tree-sitter): Update to 0.25.3.
[arguments]<#:phases>: Add 'patch-_ts_dup-visibility for linking with Rust
bindings.
(tree-sitter-cli)[source]: Keep files required for building bindings.
[inputs]: Use ‘cargo-inputs’.
[arguments]: Remove #:cargo-inputs, #:cargo-development-inputs.
<#:cargo-test-flags>: Adjust failing tests to skip.
<#:cargo-install-paths>: Add "cli".
<#:phases>: Merge 'patch-node and 'patch-dot into 'patch-references.
Update their references and use ‘search-input-file’.
Remove modification of 'install, #:cargo-install-paths now takes care of the
installation.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[tree-sitter-cli]: New
entry.
* guix/build/tree-sitter-build-system.scm
(patch-dependencies): Drop `peerDependencies' from package.json.
(build): Remove deprecated ‘--no-bindings’ option.
(check): Set CC.
(install): Add `src' to include directories in order for external
scanners to find `tree_sitter/parser.h'.

Co-authored-by: Hilton Chain <hako@ultrarare.space>
Change-Id: I3941a1785be8deb60f288fcd5983255f075f9215
Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-08-21 19:08:32 +08:00
Hilton Chain
4e8eab6fe4
build/cargo: Accept rust-sysroot from native-inputs.
This is a workaround to support Rust cross-compilation in build systems other
than cargo-build-system.  Since there's no interface for target-inputs, using
native-inputs makes most sense.

* guix/build-system/cargo.scm (lower)[bag]<target-inputs>: Label rust-sysroot
with its package name.
* guix/build/cargo-build-system.scm (configure): Use it.
When cross-compiling, accept rust-sysroot from native-inputs if there's none
in inputs.

Change-Id: I5cb63c8c815d3a2c9f0ece01857254f6d0090dd1
2025-08-21 19:08:21 +08:00
Hilton Chain
a51c34a22a
build/cargo: Unconditionally use system gettext.
No special value is required for this environment variable.

* guix/build/cargo-build-system.scm (configure): Set GETTEXT_SYSTEM
unconditionally.

Change-Id: Id40fecaf75fa76c7b7f1404db226fa1ca6a45a5e
2025-08-21 19:08:20 +08:00
Hilton Chain
99dbcf8c4e
build/cargo: Use sytsem oniguruma.
* guix/build/cargo-build-system.scm (configure): Set RUSTONIG_SYSTEM_LIBONIG.

Change-Id: I02624d98ade15d65965f46555e5a210a7630dd5d
2025-08-21 19:08:20 +08:00
Hilton Chain
836b7a05ec
build/cargo: Use system libsqlite3.
* guix/build/cargo-build-system.scm (configure): Set
LIBSQLITE3_SYS_USE_PKG_CONFIG.

Change-Id: I9a8a5818992ee687ec67abadffef67ce1533c6d3
2025-08-21 19:08:20 +08:00
Hilton Chain
9ba78f3ccf
build/cargo: Don't vendor self.
* guix/build/cargo-build-system.scm (crate-src?, configure): Exclude self.
* gnu/packages/gnome.scm (librsvg)[#:phases]: Remove ‘dont-vendor-self’.
* gnu/packages/python-crypto.scm (python-cryptography)[#:arguments]: Likewise.
* gnu/packages/python-xyz.scm (python-libcst)[#:arguments]: Likewise.
* gnu/packages/syndication.scm (newsboat)[#:arguments]: Likewise.
* gnu/packages/antivirus.scm (clamav)[#:arguments]: Likewise.

Change-Id: I5e01721fb705937f5fcf858c21b6d7e27ade6c10
2025-08-21 19:08:20 +08:00
Hilton Chain
a087db5f83
build/cargo: Support directory source inputs.
* guix/build/cargo-build-system.scm (cargo-package?): New procedure.
(crate-src?): Support directory source inputs.
(configure): Likewise.

Change-Id: If2bd318b44ed765baec69309f25d320edceee116

Fixes: https://codeberg.org/guix/guix/issues/753
2025-08-21 19:08:20 +08:00
Efraim Flashner
c8456eff68
build/cargo: Don't try to unpack sanity-check.py.
* guix/build/cargo-build-system.scm (crate-src?): Also don't try to
check python scripts for Cargo.toml.

Change-Id: I001a89b83d2e472706b1263007be45d1153c140f
2025-08-21 19:08:20 +08:00
Hilton Chain
8292d0d477
build/cargo: Set default value of arguments for build phases.
This will make it easier to use these phases in other bulid systems.

* guix/build/cargo-build-system.scm (unpack-rust-crates, configure, build)
(package, install): Set default value for arguments specific to this build
system.

Change-Id: I1dde1b063d8eee57967903abd2fce94574211a0a
2025-08-21 19:08:19 +08:00
Hilton Chain
5494343bfc
build-system: cargo: Support installing Cargo workspace.
*guix/build-system/cargo.scm (cargo-build, cargo-cross-build)
[#:cargo-install-paths]: New argument.
* guix/build/cargo-build-system.scm (install): Use it.
* doc/guix.texi (Build Systems)[cargo-build-system]: Document it.

Change-Id: I74ed1972a5716da05afeac8edb2b0e4b6834bf40
2025-08-21 19:08:19 +08:00
Hilton Chain
878bdd7fb6
build-system: cargo: Support packaging Cargo workspace.
* guix/build-system/cargo.scm (cargo-build, cargo-cross-build)
[#:cargo-package-crates]: New argument.
* guix/build/cargo-build-system.scm (package): Use it.
* doc/guix.texi (Build Systems)[cargo-build-system]: Document it.

Change-Id: I45ccd95e90827d47127015cb0bda2d41f792335b
2025-08-21 19:08:19 +08:00
Hilton Chain
5d294e2023
build/cargo: Print out all non-empty binary files.
* guix/build/cargo-build-system.scm (%standard-phases): Move
‘unpack-rust-crates’ after ‘unpack’.
Move ‘check-for-pregenerated-files’ after ‘configure’.
(check-for-pregenerated-files): Only check non-empty files.
Print out binary files.
Run in parallel.
Don't fail to keep compatibility for phase order change.

Change-Id: I0a332fe843e97687324bd908fa111422a63e475d
2025-08-21 19:08:19 +08:00
Hilton Chain
0ee848e2ee
build/cargo: Pass ‘--offline’ to cargo.
This will make error messages more helpful.

* guix/build/cargo-build-system.scm (build, check, package, install): Pass
‘--offline’ to cargo.

Change-Id: Ic95f603b793319f99c9c1fbce43f773bfc8126c0
2025-08-21 19:08:19 +08:00
Greg Hogan
f361e7fa4a
gnu: cmake-build: Retry failed tests.
* guix/build-system/cmake.scm (cmake-build, cmake-cross-build),
* guix/build-system/qt.scm (qt-build, qt-cross-build): Add
test-repeat-until-pass? and test-repeat-until-pass-count fields.
* guix/build/cmake-build-system.scm (check): Add and use new fields.
* doc/guix.texi: Document new parameters.

Change-Id: I046dfc86a18fb2a2be4ae362c1226c2f8cab129c
2025-08-04 04:11:27 +00:00
Greg Hogan
5da1d852c2
build-system/cmake: Use CMake.
* guix/build/cmake-build-system.scm (configure): Add and use generator
field to configure the build system. Create and use CMake variable cache
file. Set the CMake variable BUILD_TESTING to the value of TESTS? so
that a package can optionally build tests. Set CMAKE_COLOR_DIAGNOSTICS
to ON. Set max load for parallel builds.
(build, install): New function.
(check): Replace call to gnu-build's non-parallelizable check with
function using cmake's ctest.
(%standard-phase): Add new build and install functions as phases.

* guix/build-system/cmake.scm (cmake-build, cmake-cross-build),
* guix/build-system/qt.scm (qt-build, qt-cross-build): Add generator
and test-exclude fields and remove unused test-target field.
* doc/guix.texi: Document new parameters.

* guix/build-system/cmake.scm (cmake-build),
* guix/build-system/qt.scm (qt-build): Add ninja to build-inputs.

Change-Id: Ifa8174c91f0fdc030ac5813e98f7c21cba1a7725
2025-08-03 23:36:40 +00:00
Efraim Flashner
7a85866a5b
download: Remove extra export.
* guix/build/download.scm: Remove byte-count->string export, which isn't
defined in this file.

Change-Id: Ia11cc4b4595ef1994d0bea85c1a7b4d9d2ce6e3e
2025-07-28 13:57:56 +03:00
宋文武
1e29b73a85
gnu: qtwebengine: Fix default path for QtWebEngineProcess.
Since qtwebengine and qtbase are not installed into the same prefix,
the default path for QtWebEngineProcess won't work.  Fix it so that
we no longer need to set QTWEBENGINEPROCESS_PATH anymore.

* gnu/packages/qt.scm (qtwebengine-5, qtwebengine) [arguments]:
Substitute 'QLibraryInfo::LibraryExecutablesPath' in substitute-source phase.
[native-search-paths]: Remove QTWEBENGINEPROCESS_PATH.
* guix/build/qt-utils.scm (variables-for-wrapping): Remove
QTWEBENGINEPROCESS_PATH.

Change-Id: Ie0dfaf8c2355a679e2a3ddeacf09654830f9ab2f
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
2025-07-18 20:17:37 +02:00
Greg Hogan
b2a20e5fd9
build-system/gnu: Limit load average.
A nice feature of offload builds is that Guix will throttle the start of
new jobs based on the overload-threshold.  There is no equivalent for
local builds, so one must either run builds in serial (--max-jobs=1) and
endure single-threaded builds or run concurrent builds and watch the
system overload as it runs multiple multi-threaded builds.

From a benchmark comparing the compilation of concurrent Folly builds,
the "max-load" option reduced the overall time by 8.3%. Memory use also
drops considerably since we are only running 1/4 of the processes at any
time.

* guix/build/gnu-build-system.scm (build, check): Set max load.

Change-Id: I97f1e3e59880b6ed23faed2038eb5279415e9c95
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-07-18 20:17:32 +02:00
Ludovic Courtès
4ead533379
gnu-bootstrap: Use ‘search-input-file’.
* guix/build/gnu-bootstrap.scm (bootstrap-configure)
(bootstrap-install): Use ‘search-input-file’ instead of ‘assoc-ref’.

Change-Id: I8cd876d099a346b55b5e06b3a220f712dd504791
2025-07-18 20:17:31 +02:00
Ludovic Courtès
c57975b0e7
build-system/gnu: Use ‘search-input-file’ instead of input labels.
* guix/build/gnu-build-system.scm (configure): Use ‘search-input-file’
instead of ‘assoc-ref’ when looking for bash.
* gnu/packages/commencement.scm (%boot-gash-inputs): Update comment.

Change-Id: Ie95e95cfeb9f004fd304ff2af471ea5840af2b2e
2025-07-18 20:17:31 +02:00
Maxim Cournoyer
df94888eca
utils: Set $0 to basename of command in `wrap-program'.
* guix/build/utils.scm (wrap-program): Set the value of the -a option of
`exec' in the wrapper to ${0##*/} instead of $0, to use its base name instead
of the complete file name.

Fixes: https://issues.guix.gnu.org/73405
Change-Id: Iec5984d4d934c8df88a90ff653947f7d07413ae4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-07-18 20:17:31 +02:00
Nicolas Graves
0559a4b547
build-system: guile: Remove unused build defaults.
Defaults should be set in guix/build-system/guile.scm rather than
guix/build/guile-build-system.scm, to disambiguate at first sight
where those defaults are set.

* guix/build-system/guile.scm (guile-build)
  <#:not-compiled-file-regexp>: Add default.

* guix/build/guile-build-system.scm (build): Remove unused keyword
  defaults.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-07-16 23:50:51 +02:00
Nicolas Graves
8897360fb3
build-system: guile: Make #:documentation-file-regexp configurable.
* guix/build/guile-build-system.scm
  (install-documentation): Unset documentation-file-regexp keyword
  default.
  (%documentation-file-regexp): Move variable to...
* guix/build-system/guile.scm
  (%documentation-file-regexp): New variable.
  (guile-build, guile-cross-build): Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-07-16 23:50:51 +02:00
Liliana Marie Prikler
4fe31fd51e
guix: luanti-build-system: Ignore audio errors.
* guix/build/luanti-build-system.scm (check)[error?]: Ignore errors related to
the initialization of the audio subsystem.
2025-07-13 13:54:02 +02:00
Liliana Marie Prikler
9a75c8ac13
gnu: luanti: Prefix search paths with LUANTI.
* gnu/packages/patches/luanti-paths.patch: New file.
* gnu/packages/luanti.scm (luanti)[source]: Use it.
[#:phases]<check>: Use LUANTI_GAME_PATH.
[native-search-paths]: Rename “MINETEST_GAME_PATH” to “LUANTI_GAME_PATH”.
Rename “MINETEST_MOD_PATH” to “LUANTI_MOD_PATH”.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* guix/build/luanti-build-system.scm (check): Use LUANTI_MOD_PATH.
2025-07-13 13:54:02 +02:00
Liliana Marie Prikler
abbdfbb775
gnu: Rename minetest to luanti.
* gnu/packages/luanti.scm: New file.
(luanti, luanti-server, luanti-topic, luanti-moreores, luanti-sound-api-core)
(luanti-basic-materials, luanti-coloredwood, luanti-ethereal)
(luanti-homedecor-modpack, luanti-mesecons, luanti-mineclone, luanti-mobs)
(luanti-mobs-animal, luanti-mobs-monster, luanti-pipeworks, luanti-technic)
(luanti-throwing, luanti-throwing-arrows, luanti-worldedit)
(luanti-unifieddyes, luanti-unified-inventory, luanti-advtrains)
(luanti-basic-trains, luanti-oneblock, luanti-wielded-light): New variables.
* gnu/packages/minetest.scm:
(minetest, minetest-server, minetest-topic, minetest-moreores)
(minetest-sound-api-core, minetest-basic-materials, minetest-coloredwood)
(minetest-ethereal, minetest-homedecor-modpack, minetest-mesecons)
(minetest-mineclone, minetest-mobs, minetest-mobs-animal)
(minetest-mobs-monster, minetest-pipeworks, minetest-technic)
(minetest-throwing, minetest-throwing-arrows, minetest-worldedit)
(minetest-unifieddyes, minetest-unified-inventory, minetest-advtrains)
(minetest-basic-trains, minetest-oneblock, minetest-wielded-light): Deprecate
in favor of the above.
(minetest-game): Move to…
* gnu/packages/luanti.scm (minetest-game): … here.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register luanti.scm.
* guix/build-system/luanti.scm: New file.
(luanti-mod-build-system): New public variable.
* guix/build-system/minetest.scm (minetest-mod-build-system): Deprecate in
favor of luanti-mod-build-system.
* guix/build/luanti-build-system.scm: New file, renamed from…
* guix/build/minetest-build-system.scm: … this. Deprecate in favor of
luanti-build-system.
* guix/import/luanti.scm: New file, renamed from guix/import/minetest.scm.
(%contentdb-api): Switch to “https://content.luanti.org/api/”.
(luanti-package?, latest-luanti-release, luanti->guix-package)
(luanti-recursive-import, %luanti-updater): New public variables.
* guix/import/minetest.scm (minetest-package?, latest-minetest-release)
(minetest->guix-package, minetest-recursive-import, %minetest-updater):
Deprecate in favor of the luanti variants above.
* guix/scripts/import/luanti.scm: New file, renamed from
guix/scripts/import/minetest.scm.
(guix-import-luanti): New public variable.
* guix/scripts/import/minetest.scm (guix-import-minetest): Deprecate in favor
of guix-import-luanti.
* tests/minetest.scm: Rename to…
* tests/luanti.scm: … this.
* Makefile.am (MODULES, SCM_TESTS): Adjust accordingly.
* etc/teams.scm (games): Adjust accordingly.
* CODEOWNERS: Adjust accordingly.
2025-07-13 13:54:01 +02:00
jgart
4aff859183
guix: asdf: Add asdf-build-system/clasp.
* guix/build-system/asdf.scm (asdf-build-system/clasp): New variable.
[native-search-paths]: Add search paths.

Change-Id: I3631fa0d55112fd6440d2b500dddc4d04ead78e6
Signed-off-by: jgart <jgart@dismail.de>
2025-06-25 15:23:16 -04:00
Morgan Smith
00025ab4ac
guix: emacs-build-system: Add #:lisp-directory.
* guix/build-system/emacs.scm (emacs-build): Add #:lisp-directory.
* guix/build/emacs-build-system.scm (unpack): Change into lisp-directory
after unpacking.

Change-Id: I3991af7188de72b29b1c6985ffe7185216cedb35
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-06-15 16:56:50 +02:00
Liliana Marie Prikler
d1ac3f1947
build-system: emacs: Guess test framework.
* guix/build/emacs-build-system (check-command): New variable.
(check): Use it.
* guix/build-system/emacs.scm (emacs-build)[test-command]: Set to #f.
2025-06-15 16:56:45 +02:00
Morgan Smith
4e40362553
guix: emacs-utils: Be more verbose in build phase.
* guix/build/emacs-utils.scm (emacs-compile-directory): Display the filename
of each file before compiling.

Change-Id: I275a086ed92f7cfb2907aea9b4feb59012cc8dd5
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-06-15 16:56:44 +02:00
Efraim Flashner
ed69ed73c1
guix: gnu-dist: Fix distcheck.
* guix/build/gnu-dist.scm (build): Add a configure-flag during the
distcheck rebuild to use a shell we have in the build environment.

Change-Id: I3519ab498ef47728729297a70ac1dce8e1b922ee
2025-06-06 14:41:30 +03:00