Commit graph

1023 commits

Author SHA1 Message Date
David Elsing
30e51cb6b4
gexp: ‘with-parameters’ properly handles ‘%graft?’.
Fixes <https://issues.guix.gnu.org/75879>.

* .dir-locals.el (scheme-mode): Remove mparameterize indentation rules.
Add state-parameterize and store-parameterize indentation rules.
* etc/manifests/system-tests.scm (test-for-current-guix): Replace
mparameterize with store-parameterize.
* etc/manifests/time-travel.scm (guix-instance-compiler): Likewise.
* gnu/tests.scm (compile-system-test): Likewise.
* guix/gexp.scm (compile-parameterized): Use state-call-with-parameters.
* guix/monads.scm (mparameterize): Remove macro.
(state-call-with-parameters): New procedure.
(state-parameterize): New macro.
* guix/store.scm (store-parameterize): New macro.
* tests/gexp.scm ("with-parameters for %graft?"): New test.
* tests/monads.scm ("mparameterize"): Remove test.
("state-parameterize"): New test.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I0c74066ca3f37072815b073fb3039925488a9645
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-03-05 00:28:49 +01:00
Efraim Flashner
c1bcaba4d8
etc: Add cross-compile manifest.
* etc/manifests/cross-compile.scm: New file.

Change-Id: I63ac4014617e8d716c508a04c6da553e36a99fec
2025-03-02 16:48:10 +02:00
Efraim Flashner
eeebc87f9f
etc: manifests/release: Only check for packages needed in the installer.
* etc/manifests/release.scm (%system-packages): Adjust the packages
which are depended upon by the installer.  Add a set of extra packages
which we expect to have available.
(%base-packages, %base-packages/armhf, %base-packages/hurd,
%packages-to-cross-build, %packages-to-cross-build-for-mingw,
%cross-bootstrap-targets, %base-manifest, %cross-manifest,
%cross-bootstrap-manifest): Remove variables.

Change-Id: I5806fff6bc38d14859f6d7163719841620e28d09
2025-03-02 16:48:10 +02:00
Efraim Flashner
61ca5bdbce
nix: Install guix-gc systemd timer.
* nix/local.mk (nodist_systemdservice_DATA): Add etc/guix-gc.timer.
(etc/guix-gc.timer): Add rule to generate file.
(EXTRA_DIST): Add guix-gc.timer.in, remove guix-gc.timer.
* gitignore: Add etc/guix-gc.timer.

Change-Id: I361aef660fe7d9803f58f4e31e16d8db595d1853
2025-03-02 14:21:59 +02:00
Andy Tai
38011da03d
installer: Include icewm as a desktop environment.
* gnu/installer/services.scm (%system-services): Include icewm as a desktop
environment.
* gnu/tests/install.scm (installation-target-desktop-os-for-gui-tests): Add
icewm to the list of packages.
* etc/manifests/release.scm: (%system-packages): Add icewm.

Change-Id: I881c1dd4289281e51c81d83fac785ef064e6ff6a
Signed-off-by: Christopher Baines <mail@cbaines.net>
2025-03-01 22:22:34 +00:00
Cayetano Santos
48baf572c5
etc: teams: Add Cayetano Santos to emacs team.
Change-Id: Idee313521617fda7ab5287346cd98de0645263d2
Signed-off-by: Ian Eure <ian@retrospec.tv>
2025-03-01 09:16:26 -08:00
Steve George
751017da49
teams: Add Steve George.
* etc/teams.scm ("Steve George"): New member.

Change-Id: I40c7bd280d086357476958bd965b16b8a1462cfe
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-02-28 23:24:45 +01:00
Greg Hogan
be6172d006
gnu, teams: Fix typos.
* etc/teams.scm: Remove miscopied comment.
* gnu/packages/python-web.scm, gnu/packages/python-xyz.scm:
Fix spelling.

Change-Id: I1d7aea5804c1216a5f43d19f10772861c5d673bd
2025-02-28 23:03:36 +01:00
Maxim Cournoyer
79a46d6537
gnupg: Automatically fallback to 'always policy when non-interactive.
Previously to this change, the 'guix refresh' download
policy (--key-download)would default to 'interactive', which would throw a
backtrace when guix was invoked with its stdin not connected to a peusdo
terminal (tty).  This change makes the new default value 'auto' use
interactive only in an interactive environment, with 'always' used as
fallback.

* doc/guix.texi (Invoking guix refresh): Adjust doc.
* etc/completion/fish/guix.fish: Adjust accordingly.
* etc/completion/zsh/_guix (_guix_list_installed_packages): Likewise.
* guix/gnupg.scm (gnupg-verify*): Change default #:key-download argument value
to 'auto.  Update doc.  Validate argument.  Raise an error in case read-line
returns #<eof>.
* guix/import/gnu.scm (gnu-package->sexp): <#:key-download>: Change default
value to 'auto.
* guix/import/gnu.scm (gnu->guix-package): <#:key-download>: Likewise.
* guix/scripts/import/gnu.scm (%options): Add "auto" to accepted
--key-download values.
(%default-options): Set default key-download option to the 'auto value.
(show-help): Update doc.
* guix/scripts/refresh.scm (show-help): Update doc.
(update-package) <#:key-download>: Change default value to 'auto.  Update doc.
* guix/upstream.scm (download-tarball): <#:key-download>: Likewise.
(package-update): Likewise.

Change-Id: Id1ca8fd6d453ca4bc5b372534445e3beab9133a8
Fixes: https://issues.guix.gnu.org/76112
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
2025-02-28 13:36:44 +09:00
Maxim Cournoyer
99bf56fd50
guix-install.sh: Convert sysv-init to SYSV_INIT_REQUIRE to match variable name.
See <https://lists.gnu.org/archive/html/bug-guix/2024-06/msg00145.html>.
Thanks to Nyi Nyi Zaw for the patch.

* etc/guix-install.sh (add_init_sys_require): Adjust value of INIT_SYS so that
it matches the potential extra required arguments array name.

Reported-by: Nyi Nyi Zaw
Reported-by: Diana Belle <garbados@gmail.com>
Change-Id: Ic41de6fba7ef37dff479728aebefaa8cb148315e
2025-02-28 13:36:44 +09:00
Florian Pelz
9756699849
news: Add 'de' translation.
* etc/news.scm: Add German translation of update of 'linux-libre' entry.

Change-Id: I0a543ed805d22491257ad6f94bbcd527657dabee
2025-02-23 09:10:01 +01:00
Leo Famulari
429613a786
teams: Remove Marius Bakke from teams due to inactivity.
* etc/teams.scm (Marius Bakke): Remove from the python team.

Change-Id: I707399496176a67f819eb9532e42e5f4ed250e94
2025-02-22 22:45:24 -05:00
Cayetano Santos
c108ed162d
etc: teams: Add Maxim Cournoyer to electronics team.
Change-Id: If907ecf47c86cefcc934304f4f4059e0d060262d
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-02-22 23:55:24 +09:00
Cayetano Santos
e0590b7261
etc: teams: Add Cayetano Santos.
Change-Id: I8ec5f0d1dd78344039ef4b51a3dc48c3502f9310
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-02-22 23:55:24 +09:00
Cayetano Santos
7345d4f18d
etc: teams: Add an electronics team.
Change-Id: Ibc0b022a66be02ed98cd72da47357fc6e0af88e5
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-02-22 23:55:24 +09:00
Morgan Smith
8451e489bd
tests: Fix system tests source path
Follow up to commit 12d00767f0

That commit moved the manifests into a subdirectory but failed to update the
relative path.  That caused 'make check-system' to fail.

* etc/system-tests.scm (system-test-manifest): Set the source path to be the
root of the repository as it had been previously.

Change-Id: I68fb460861c4af080f5b14d1343d67b7e96109b0
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-02-22 23:55:24 +09:00
Maxim Cournoyer
b93b7c4a91
etc: Update the commit-msg hook.
Update our copy to the latest version retrieved from
<https://gerrit.googlesource.com/gerrit/+/refs/heads/master/resources/com/google/gerrit/server/tools/root/hooks/commit-msg>.

This change contains an improved version which avoids creating duplicate
Change-Id git trailer when rebasing.

* etc/git/commit-msg: Update to latest version, taking care to preserve our changes.

Change-Id: Ie6ae6aa5e81cd4fce28a6be5cd68ca0a61cdebc0
2025-02-22 23:55:24 +09:00
Liam Hupfer
bff76fe66a
guix-install.sh: Check for existing installation before downloading.
Previously, the check came after guix_get_bin.  There’s no need to fetch
the rather large release archive if there’s an existing installation, so
check first.  Refactor the check into a function similar to other
preflight checks.

* etc/guix-install.sh: Check for existing installation before
downloading.

Change-Id: I5506fb1cacdc88bd6355e8dfa1f690acf7886c1f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-02-21 15:27:11 +01:00
Liam Hupfer
201db94628
guix-install.sh: Add msg helpers and use stderr consistently.
Add helpers to avoid repeated manual concatenation.

_err and _msg "$ERR are used interchangeably with their only difference
being output stream; convert all errors to use _err.

* etc/guix-install.sh: Add msg helpers and consolidate errors to stderr.

Change-Id: I06e97ccc50d108ed9e279ae80c6b2386d7b8c36b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-02-21 15:27:11 +01:00
Liam Hupfer
754a5ab02f
guix-install.sh: Appease shellcheck.
* etc/guix-install.sh: Appease shellcheck.

Change-Id: I24f0d13bb254c08d4fe45f5aa3b74bbc6a9a9d88
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-02-21 15:27:11 +01:00
Liam Hupfer
50844e9737
guix-install.sh: Add to MANPATH.
Guix and Guix-provided software also have man pages.  If the user
doesn’t install man-db via Guix, they should still be able to read
Guix-provided man pages.

* etc/guix-install.sh (sys_create_init_profile): Add to MANPATH.

Change-Id: Ibceb354012d23d24deeb39b1ec02790873396a6b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-02-21 15:27:11 +01:00
Liam Hupfer
f9789e9bc6
guix-install.sh: Improve Guix profile sourcing.
Make both profiles use GUIX_PROFILE and reorder some code so each
profile is handled in one contiguous block.  The user’s profile now
takes precedence over the ‘guix pull’ profile on INFOPATH.  If the user
already has an info reader in their Guix profile, don’t add a duplicate
entry to INFOPATH.  If the user doesn’t have an imperative
~/.guix-profile (i.e. they manage software with Guix Home and ‘guix
shell’), don’t add an unnecessary entry to INFOPATH.  Clean up after
ourselves by unsetting the temporary GUIX_PROFILE variable, which only
needs to be set when sourcing.

* etc/guix-install.sh (sys_create_init_profile): Improve Guix profile
sourcing.

Change-Id: Ibceb354012d23d24deeb39b1ec02790873396a6b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-02-21 15:27:11 +01:00
Liam Hupfer
f726d616f8
guix-install.sh: Remove system-level Guix Home initialization.
Guix Home handles its own profile initialization in ~/.profile and
documents shell setup accordingly.  It does more than what is done here,
including running an on-first-login script to start a user Shepherd
instance.  In general, changes and improvements to Guix Home
initialization are unlikely to propagate to the foreign distro install
script, since many Guix contributors only use Guix via Guix System and
Guix Home does not depend on system-level initialization anyway.

Avoid partially initializing Guix Home in /etc/profile.d to keep search
path variables free of redundant entries.  Instead, leave a comment
directing users to the relevant manual section.

* etc/guix-install.sh (sys_create_init_profile): Remove system-level
Guix Home initialization.

Change-Id: Ib78aa0382268a789298d4980ee394d99a602a5ca
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-02-21 15:27:11 +01:00
Leo Famulari
94248683a9
news: Add entry about linux-libre 6.13 update.
* etc/news.scm: Add entry.

Change-Id: Ic2fc5ca180648d96902e51b834ba246a96f6edb7
2025-02-20 16:10:09 -05:00
Vagrant Cascadian
71a7ae5ccb
etc: news: Fix typo.
* etc/news.scm: Fix spelling of "split".
2025-02-20 11:55:05 -08:00
Ludovic Courtès
8c483c12e9
Revert "services: Switch to ‘shepherd-system-log-service-type’ in ‘%base-services’."
This reverts commit c83bfc0415 and the
corresponding ‘etc/news.scm’ entry (commits
12bd93113c and
622568ec13) while investigating
<https://issues.guix.gnu.org/76315>.

Change-Id: Ie26c24b8cd25cee3466cc871470b0bec9a5dfafb
2025-02-16 23:09:41 +01:00
Ludovic Courtès
1afbf48b25
maint: Actually run ‘make check-channel-news’ in pre-push hook.
Fixes a bug introduced in ab9cda9ebd where
‘make check-channel-news’ would not longer be executed.

* etc/git/pre-push: Remove ‘exec’ before ‘guix git authenticate’.

Change-Id: Ic425db866e44695493be96a0a8c81c77c815e42d
2025-02-16 00:20:13 +01:00
Ludovic Courtès
622568ec13
news: Fix syntax error.
* etc/news.scm: Fix.

Change-Id: Ieec0f5ec46cf09daddb8b3dd5d93113de90b82e2
2025-02-16 00:16:04 +01:00
Ludovic Courtès
12bd93113c
news: Add entry for ‘system-log’ switch.
* etc/news.scm: Add entry.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Co-authored-by: Florian Pelz <pelzflorian@pelzflorian.de>
Change-Id: Ie3d827741a01c95f2bea908b57c707342e8f2386
2025-02-15 22:48:20 +01:00
Jelle Licht
192c365a60
etc: teams: Add entry for Jelle Licht.
* etc/teams.scm ("Jelle Licht"): New member.

Change-Id: I45f7e49ae16c011f14b65aa7bdbdf15ea3721bd2
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-02-13 19:47:47 +00:00
Jelle Licht
1dea85e392
etc: Add a javascript team.
* etc/teams.scm (javascript): New variable.

Change-Id: I071081b01761fcc4e3baf5eb5804c849926214bc
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-02-13 19:47:47 +00:00
pelzflorian (Florian Pelz)
d2b938ea5e
news: Add 'de' translation.
* etc/news.scm: Add German translation for linux-libre entries.

Change-Id: Id03cce3c5b0ea01578835d83bda8d1ec06b53215
2025-02-12 02:13:59 +01:00
Roman Scherer
0bf82b3fd5
news: Add entry for 'hetzner-environment-type'.
* etc/news.scm: Add entry.

Change-Id: I7d2575d8e69855516cbf4c3747a23c344890321a
Co-authored-by: Florian Pelz <pelzflorian@pelzflorian.de>
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2025-02-11 15:03:40 +01:00
Zheng Junjie
984fbcb28f
teams: Add entry for Zheng Junjie.
* etc/teams.scm ("Zheng Junjie"): New member.

Change-Id: I40727dd9bb64ba042fff45d804b0846996cbef80
2025-02-07 13:00:18 +08:00
Leo Famulari
1b1507afa9
news: Add entry about disable the kernel's EFI pstore backend.
* etc/news.scm: Add entry.

Change-Id: I2ea14a87abfed7157d74913c7e918c289cf6b9af
2025-02-03 16:43:52 -05:00
Leo Famulari
f0c8ea7be8
news: Add entry for linux-libre 6.13.
* etc/news.scm: Add entry.

Change-Id: I0e02007cc085e52a1c98627b921d6d946435ae67
2025-02-03 16:43:52 -05:00
Maxim Cournoyer
7991121aa1
teams: Add gnu/services/desktop.scm to the scope of gnome-team.
* etc/teams.scm (gnome): Add "gnu/services/desktop.scm" to #:scope.

Change-Id: Ib1294baf805c3146a02bed773a0b3f66f7f40b90
Signed-off-by: Ian Eure <ian@retrospec.tv>
2025-01-29 20:07:18 -08:00
Denis 'GNUtoo' Carikli
8e946568ea
guix-install.sh: uninstall: Also remove shell completion symlinks.
Since symlinks to shell completion files are installed, it is useful to remove
them during the uninstallation, especially when they point to files that are
removed by 'guix-install.sh --uninstall'.

* etc/guix-install.sh (sys_delete_shell_completion): Create.
  (sys_create_shell_completion): hardcode files being installed.
  (sys_customize_bashrc): call sys_delete_shell_completion.

Change-Id: I70008bb55e7e1604f0c485c798460e160af7c9e5
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-01-27 14:42:41 +01:00
Ludovic Courtès
a42d57a935
news: Add entry for ‘%base-home-services’.
* etc/news.scm: Add entry.

Co-authored-by: Florian Pelz <pelzflorian@pelzflorian.de>
Change-Id: I77b73ab870116004bfe66d86a28532af3e5447aa
2025-01-16 22:33:06 +01:00
Ludovic Courtès
c785dfb5ac
news: Add entry for ‘rottlog-service-type’ deprecation.
* etc/news.scm: Add entry.

Change-Id: I46ccddf4216b4c46ec417692c832b2e37a3669a0

Co-authored-by: Florian Pelz <pelzflorian@pelzflorian.de>
2025-01-16 22:32:02 +01:00
Liliana Marie Prikler
6bdada7e53
etc: snippets: Improve usability of tempel phases snippets.
* etc/snippets/tempel/scheme-mode.eld (#:phases~\ ): New snippet.
(add-before\ , add-after\ , replace\ ): Add dummy phase names.
2025-01-16 08:42:05 +01:00
Liliana Marie Prikler
73963e8f88
teams: gnome: Add gnome-extension-manifest.
* etc/teams/gnome/gnome-extension-manifest.scm: New file.
2025-01-16 08:41:01 +01:00
Liliana Marie Prikler
5af678095d
teams: gnome: Add gnome-manifest.
* etc/teams/gnome/gnome-manifest.scm: New file.
2025-01-16 08:41:01 +01:00
Florian Pelz
21574796e9
news: Add 'de' translation.
* etc/news.scm: Add German translation for linux-libre entries.

Change-Id: Iee6f2a3f3871217f5db2e2b2eaebeca14ffb30ac
2025-01-13 23:23:27 +01:00
Leo Famulari
666f484fcf
news: Add entry about removing linux-libre 6.11.
* etc/news.scm: Add entry.

Change-Id: Id405d3f289f22f52c252a7b30ba66abe963a54d8
2025-01-12 15:33:58 -05:00
Ludovic Courtès
6e215b83db
etc: upgrade: Add web and crypto packages.
* etc/manifests/upgrade.scm (security-packages): add nghttp2, nginx,
nettle, and libsodium.

Change-Id: I264d4595c3448cdfe5aefebbeb19eeee5107cef9
2025-01-11 23:36:57 +01:00
Leo Famulari
f15ca836e4
news: Add entry about linux-libre 6.12 update.
* etc/news.scm: Add entry.

Change-Id: I174484cf24f0ca5aa57d55d4712b5f1200f0c957
2025-01-10 16:36:23 -05:00
Ian Eure
82693bc892
teams: Add Ian Eure to mozilla and emacs teams.
Change-Id: I1e4b1c049d198fc36ca718d2ce6b8873337a8980
2025-01-07 20:24:41 -08:00
Leo Famulari
42184048ce
news: Add entry for linux-libre 6.12.
* etc/news.scm: Add entry.

Change-Id: I10bc03ec902e4c00f9f6fddfffcf3cbf4f1a8100
2025-01-07 18:20:09 -05:00
Divya Ranjan
059dacaea1
teams: Add Divya Ranjan Pattanaik to emacs, rust and haskell
* etc/teams.scm: Add Divya Ranjan Pattanaik.

Change-Id: Id68da5d614bc760619b9328bf1b2751f882abadd
Signed-off-by: Ian Eure <ian@retrospec.tv>
2025-01-05 13:27:27 -08:00