This adds a more convenient means to filter out most, but not all, development
dependencies.
* guix/build/node-build-system.scm (%dependency-keys)
(%dev-dependency-keys): New variables.
(delete-dependencies) [#:negate?, #:dependency-keys]: New arguments. Log
removed dependencies.
(delete-dependencies/except, delete-dev-dependencies/except): New procedures.
* tests/node.scm: New test.
* Makefile.am (SCM_TESTS): Register it.
And otherwise do not abort the build.
* configure.ac (ENDIF): New output variable.
* Makefile.am (GIT_CORE_HOOKS_PATH, NL): New variables. Add conditional
warnings messages.
(git_hooks_checks): New variable.
($(GIT_HOOKS_DIR)/pre-push, $(GIT_HOOKS_DIR)/commit-msg): Use it.
Reported-by: Nicolas Graves <ngraves@ngraves.fr>
Merges: !9031Fixes: #8064
This reverts commit 8005e09b26 and follow-ups.
This was added 2 years ago to be able to trace commits between the git
repository and the guix-patches tracker, and to implement a solution to
automatically close merged commits (which has not materialized).
Since we have now migrated to Codeberg, the cross-referencing between reviewed
commits (pull requests) and the actual commits merged can be done in the
Codeberg UI (via the 'manually merged' option), and Codeberg also supports
closing a bug via the "Fixes: #NNN" git trailer, and as a convention we can
add a "Merges: !NNN" git trailer in a commit closing a PR (the actual closing
is not yet implemented by Forgejo), which mostly obsoletes the purpose of the
Change-Id git trailer.
* Makefile.am ($(GIT_HOOKS_DIR)/pre-push): Make a phony target, and copy file
when the target differs from its prerequisite.
Fixes: #7645
Reported-by: Gábor Udvari <mail@gaborudvari.com>
Change-Id: I6b5f677afe59c25a4d8905da814af4bbd91fb401
This commit includes squashed changes from
https://codeberg.org/guix/guix/pulls/7220 and
https://codeberg.org/guix/guix/pulls/7338.
* gnu/packages/aux-files/python/pytest_guix.py: New file.
* Makefile.am: Record it.
* guix/build/pyproject-build-system.scm (check): Preload pytest_guix
plugin when available.
* guix/build-system/pyproject.scm (default-pytest-guix-plugin): New
package, generated from pytest_guix.py.
(lower): Add python-pytest-guix argument, and inject it if
python-pytest is in the native-inputs.
Change-Id: I13263b461e9962aad340347657b9c9685db63927
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
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>
The file transitively depends on vboot-utils, which does not build
and which depends on python2. This effectively reverts commit
df2a96167f .
* gnu/system/examples/asus-c201.tmpl: Remove file.
* Makefile.am (EXAMPLES): Unregister file.
Change-Id: I90683a01fc53c0491a77670c850c7afe6026c878
Commit 427b8f960e introduced a regression that broke building Guix in an
isolated container.
* configure.ac ($(GIT_HOOKS_DIR), $(GIT_HOOKS_DIR)/%)
($(GIT_CONFIG_FILE), $(GIT_HOOKS_DIR)/commit-msg): Guard against the cases
where GIT_HOOKS_DIR or GIT_CONFIG_FILE variables are empty.
Fixes: <https://issues.guix.gnu.org/80388>.
Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I68645f93d9e1088902f6e0d2c8f97fe969d741c0
Also simplify recipes by enclosing in the 'in_git_p' Automake conditional.
* Makefile.am (GIT_HOOKS_DIR, GIT_CONFIG_FILE): New variables.
(.git/hooks/, .git/hooks/%, .git/config, .git/hooks/commit-msg): Rewrite in
terms of the above.
(nodist_no_inst_DATA): Likewise.
Change-Id: I8fba6a1923bae5f54253ef6aa529bf68e01678ef
This ensures that only Guix channel is used, with the default url.
* Makefile.am (release): Add "-q" to time-machine.
Change-Id: I3102660919e946a7df4620318d11599cdbde7ad8
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
This is a rewrite of the bash commands for generation of guix binary
tarballs and system images to Guile. I am expecting this will help us
significantly with getting the same derivations locally and from Cuirass,
instead of relying on images/tarball job specifications and trying to tweak
it locally to have the same ones.
Implements: #4347, #4348.
* etc/teams/release/artifacts-manifest.scm: Make a manifest with
release artifacts for all supported systems.
* etc/teams/release/artifacts.scm: Collect artifacts for
all supported systems into a union with proper names for
the release artifacts.
* Makefile.am (release): Use time-machine instead of pre-inst-env; Switch to
building new artifacts.scm
Change-Id: I71a6a27e6f315dd31b91c49e71dff2d09695c0dc
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
Due to recent changes, the commit has to be published
to create the artifacts. Because of that, split the
target to two.
* Makefile.am
(release): Move first steps to prepare-release
(prepare-release): New target; Beginning of release.
Change-Id: I325c6dc36f7298482de7797c1e01fdaa70ef80c5
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
For now, the packages are from the online form sent in
<https://lists.gnu.org/archive/html/guix-devel/2025-10/msg00091.html>.
Going forwards, more packages can be added manually or if there are more
answers to the form.
* etc/manifests/release-user-packages.scm: New file.
* Makefile.am: Add it.
Change-Id: I2d619ab9d307a6ea216310d1c86a1dc71feb1523
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
Signed-off-by: Andreas Enge <andreas@enge.fr>
As stated in the manifest, use two release manifests:
1. Minimal one
2. Full one with all the desktop services enabled.
* etc/manifests/release.scm: Move to etc/manifests/release-minimal.scm.
* etc/manifests/release-minimal.scm (%system-packages):
Add packages from default privileged-programs.
Add %base-firmware.
Add %base-packages.
Remove desktops.
Remove xorg modules.
* etc/teams.scm (release): Add new splitted manifests.
* Makefile.am
(EXTRA_DIST): Remove release manifest; Add manifests release-minimal and
release-desktop.
(assert-binaries-available): Use new splitted release manifest.
* etc/manifests/release-desktop.scm (%system-packages):
Add desktops.
Add xorg modules.
* CODEOWNERS: Regenerate file.
Change-Id: I40de8b5d0f9c8b630e8af7969d4c195dd9e2c3e2
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>