Commit graph

1036 commits

Author SHA1 Message Date
Hilton Chain
1232e53526
gnu: rust-crates: Add ‘package:’ prefix for replaced crates.
This avoids definitions like
‘(define rust-pipewire-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)’.

* gnu/packages/rust-crates.scm: Import (gnu packages rust-sources) module with
‘package:’ prefix.
* etc/teams/rust/rust-crates.tmpl,
* doc/guix-cookbook.texi (Cargo Workspaces and Development Snapshots): Adjust
accordingly.

Change-Id: Ie41556d8f30db65e968d8e8238491f1345eeed59
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2026-01-18 11:14:55 +01:00
Simon Josefsson
79cf0fb7a3
guix-install.sh: Make /etc/profile.d/zzz-guix.sh usable in set -u shells
* etc/guix-install.sh: Replace $INFOPATH, $MANPATH with ${V:-} variant.

Closes: guix/guix#4534
Change-Id: I82da28d1347b1f37862b903f1721d9bdbb78acd2
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
Merges: #4553
2026-01-16 20:23:50 +01:00
Efraim Flashner
35930066e5
etc: Spelling corrections.
* etc/apparmor.d/guix,
etc/teams/release/artifacts-manifest.scm: Fix misspellings in comments.

Change-Id: Iff757784cc82968c25004bdb430f1ae3ad44624e
2026-01-14 09:16:45 +01:00
Rutherther
64668f7c15
etc: release: Add spare space to the release VM image.
* etc/teams/release/artifacts-manifest.scm (qcow2-for-system): Make size 20
GiB.

Fixes: #5081
Change-Id: I11f932c417efc086b99f41a8ffc1f56ee86234f9
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
Merges: #5218
2026-01-04 12:47:39 +01:00
Rutherther
d078db3272
etc: guix-install.sh: Set XCURSOR_PATH to proper default value.
As can be seen in the Xcursor docs, the default path is
`~/.local/share/icons, ~/.icons, /usr/share/icons, /usr/share/pixmaps`,
zzz-guix.sh is currently missing the first two.

* etc/guix-install.sh (sys_create_init_profile): Add home paths to XCURSOR_PATH.

Change-Id: I4284d7648394c06b83e4eba91882b81c8a35d706
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
Merges: #5231
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2026-01-04 12:46:59 +01:00
Rutherther
2d4ed08662
etc: release: Switch to Guile declaration of artifacts.
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>
2025-12-23 09:16:05 +01:00
Rutherther
9e7e40b8bd
services: xorg: Return only supported packages in %default-xorg-modules.
The xorg modules are used inside of services that's thunked. So we can
make them depend on the %current-system.

* gnu/services/xorg.scm
(default-xorg-modules): New variable.
(%default-xorg-modules): Return result of (default-xorg-modules).

Change-Id: I10f722e52d598ce3e83ef3f200b3bd953bc08e17
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:41 +01:00
Rutherther
bb2263102a
guix-install.sh: Do not set GUILE_LOAD_PATH in zzz-guix.sh.
Channels from the load path will shadow channels used through time-machine or
used through any other guix than the one in ~/.config/guix/current. This is
true for all channels that are in ~/.config/guix/current except guix.  On Guix
System, /run/current-system/profile/share/guile/site/3.0 is usually in
GUILE_LOAD_PATH that typically has only Guix, so no shadowing happens in most
cases.

For using Geiser and other sw, it's possible to configure them to use "guix
repl" that's intended for this use case. This is then makes the guix being
used explicit.

It is expected that this is only a temporary solution. After a proper
solutions is found, it will be reverted.

Workaround #4819.
Reverts: 78390634d7.

Change-Id: I36b921a758618f382af9097003415f902b27c44b
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 22:54:11 +01:00
Noé Lopez
3dadea4b6d
guix-install.sh: Install AppArmor profile.
* etc/guix-install.sh (sys_maybe_setup_apparmor): New function.
(main_install): Call it.
(sys_delete_apparmor_profiles): New function.
(main_uninstall): Call it.

Fixes #4210.
Fixes <https://issues.guix.gnu.org/71226>.

Change-Id: Ice4bf4d91a1ae438fc5654dec327f53ae9a7b888
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 22:48:59 +01:00
Noé Lopez
60782c20d4
etc: Add AppArmor profile for the guix command.
* etc/apparmor.d/guix: New file.
* Makefile.am (nodist_apparmor_profile_DATA): Add it.

Change-Id: I3d61238203d7663ce582717f8e4eac4c6f679928
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 22:48:58 +01:00
Noé Lopez
587fd2dad4
etc: Add AppArmor profile for the daemon.
* .gitignore: Add etc/apparmor.d/tunables/guix.
* Makefile.am (nodist_apparmor_profile_DATA)
(nodist_apparmor_profile_tunables_DATA): Define it.
* configure.ac: Generate etc/apparmor.d/tunables/guix. Add
--with-apparmor-profile-dir option.
* etc/apparmor.d/guix-daemon: New file.
* etc/apparmor.d/tunables/guix.in: New file.
* doc/guix.texi: Document AppArmor profiles.
* gnu/packages/package-management.scm (guix): Add future changes commented.

Change-Id: Iac7df9d642383cc46a2d450c3badef31199ab041
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 22:48:57 +01:00
Rutherther
9a78e76076
guix-daemon.service.in: Make service restartable.
Currently the service cannot be restarted, because the gnu store mount makes
it read-only. So fix this by removing the mount when starting the service.

"-" to accept failures, in case the command doesn't finish successfully,
chances are, the store can be mounted as RW, so continue.
"+" to run as root

Fixes: #4744

* etc/guix-daemon.service.in
(Service)<ExecStartPre>: Stop gnu-store.mount
(Service)<ExecStartPost>: Start gnu-store.mount

Change-Id: I296f5d8805497f8a7364b68d627eb6d4fc05dbff
2025-12-22 22:48:48 +01:00
Hilton Chain
7a4de7a900
teams: Update team status for Hilton Chain.
* etc/teams.scm (hako): Remove teams.

Change-Id: Ib563d084e2bc2d603c7968e04bed0d222f547a0d
2025-12-22 15:04:26 +08:00
jgart
ae36f472bc
teams: lisp: Add manifest.
* etc/teams/lisp/lisp-manifest.scm: New file.

Change-Id: I9e23464197978bc6236eb13d42bd9bc3069bddeb
Signed-off-by: jgart <jgart@dismail.de>
2025-12-21 16:01:45 -06:00
Lilah Tascheter
20263c4a82
etc: Add tinystar to Hare team.
* etc/teams.scm (Lilah Tascheter): New member.

Signed-off-by: jgart <jgart@dismail.de>
2025-12-21 15:57:45 -06:00
Thiago Jung Bauermann
09acdd3142
etc: guix-install.sh: Set XDG_DATA_DIRS.
This allows better integration of packages installed by Guix with the
foreign distro. E.g.:

1. .desktop files from applications installed by Guix can be found by
the user's desktop environment.

2. Fonts installed in ~/.guix-profile/share/fonts can be found by GUI
applications without having to install the fontconfig package, as the
the "Application Setup" section of the manual recommends.

* etc/guix-install.sh (sys_create_init_profile): Add $GUIX_PROFILE/share
to XDG_DATA_DIRS.

Change-Id: Iba74b0782ffbad64d64cc1c5889b04012963a3e0
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-20 13:37:08 +01:00
Danny Milosavljevic
33b0df3b26
etc: Add daym to python team.
* etc/teams.scm: Make daym a member of the python team.

Change-Id: I4b9e681f4fa0098a9be02bdac37060d1a0256dda
2025-12-19 18:25:38 +01:00
Nguyễn Gia Phong
be8bbdd271
teams: Add entry for Nguyễn Gia Phong
* etc/teams.scm ("Nguyễn Gia Phong"): New member.

Change-Id: I3492513cb136e500f9798e31bd938feecaaddb48
Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-12-18 17:16:46 +00:00
jgart
2a59e5d392
teams: python: Add manifest.
* etc/teams/python/python-manifest.scm: New file.

Change-Id: I1443ec2f2e5584a47dbe580caa682093e5fa1fe3
Signed-off-by: jgart <jgart@dismail.de>
2025-12-17 11:02:53 -06:00
jgart
12dcbe5876
teams: hare: Fix typo in module header comment.
* etc/teams/hare/hare-manifest.scm: Fix typo in module header comment.

Change-Id: Ic8b9dfeb2ae9f7785bd56c41c7cb5c568e6b7bbb
2025-12-15 19:02:32 -06:00
npatra
669a6c8e99
guix-install.sh: Check for gpg keys only if downloading tarball from ftp.
* etc/guix-install.sh (main_install): Call chk_gpg_keyring only if
GUIX_BINARY_FILE_NAME is not set.

Change-Id: Ia0a7449c8798ca7d61a0f1f1e793f2bafd521c5b
Signed-off-by: npatra <nilesh@riseup.net>
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-15 21:53:27 +01:00
Nilesh Patra
1fea6b359f
guix-install.sh: Fetch gpg keys from codeberg and public keyservers.
Instead of fetching from no longer responsive gnu.org, fetch from
Codeberg.org, falling back to public keyservers in case codeberg
is down or unresponsive.

* etc/guix-install.sh
(GPG_SIGNING_KEY): Change gnu.org user ids to codeberg usernames.
(PUBLIC_KEYSERVERS): Add variable.
(chk_gpg_keyring): Use codeberg for fetching gpgs and fallback to public
keyservers.

Change-Id: Iddcd31239e2f3460d920194d62443ff00be7c957
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-15 21:53:26 +01:00
Thiago Jung Bauermann
53808b13b8
etc: SELinux: Add permissions to allow garbage collection.
There may be an improvement to be made to guix-daemon to avoid some
spurious denial audit messages, as described in the FIXME.

* etc/guix-daemon.cil.in: Add missing rules for guix gc.

Change-Id: I3651c4523528649048c7135fabd3000c8e78b1ff
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-15 21:53:21 +01:00
Thiago Jung Bauermann
1b59b93602
etc: SELinux: Add missing permissions.
With the changes in this commit, I can use "guix pull" and
"guix install <package>" successfully and without generating SELinux
denial erros in the system log.

* etc/guix-daemon.cil.in: Add missing rules for guix pull/guix install.

Change-Id: I40b5ed2c458b275804bc073fb72286947ecb0283
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-15 21:53:17 +01:00
jgart
6def6eae95
gnu: Add bonsai.
* gnu/packages/hare-apps.scm (bonsai): New variable.

Change-Id: I4489911b111c48aeb9b084e685aaafa8adfd98e4
Signed-off-by: jgart <jgart@dismail.de>
2025-12-13 22:57:49 -06:00
Anderson Torres
f82549d9f6
etc: Translate news to Portuguese.
* etc/news.scm: Translate to Portuguese.

Change-Id: Ieb467278d92d46dc1dde339dec03677d77b2a421
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2025-12-13 14:35:27 +01:00
Florian Pelz
43000584aa
news: Add 'de' translation.
* etc/news.scm: Add German translation of linux-libre 5.4 removal entry.

Change-Id: I541dd12cc2364d36fb77ef3fc11442760b9d191c
2025-12-12 16:11:32 +01:00
Leo Famulari
243bc42768
news: Announce the end of support for linux-libre 5.4.
* etc/news.scm: Add entry.

Change-Id: I9f8122bb46c5e7d2c369d86d4e8f4888c5b5bcd9
2025-12-11 17:02:42 -05:00
Anderson Torres
8b304ac633
etc: Translate news to Portuguese.
* etc/news.scm: Translate to Portuguese.

Change-Id: I2cb34804a2a89db59ddcd42b393915b358b18f33
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2025-12-10 18:20:20 +01:00
Noé Lopez
21f0be1aa3
etc: manifests: Add important packages manifest for release.
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>
2025-12-10 13:01:00 +01:00
Laurent Gatto
f664eb4ec8
etc: Add lgatto to bioinformatics team. 2025-12-09 08:24:49 +01:00
jgart
ce66fb23c3
teams: hare: Fix typo in hare manifest.
* etc/teams/hare/hare-manifest.scm: Fix typo in hare manifest.

Change-Id: Ie9512e7d6d724634c6163acfce7db5a2208f9ace
2025-12-08 15:04:06 -06:00
jgart
7aa3e247dc
teams: hare: Add manifest.
* etc/teams/hare/hare-manifest.scm: New file.

Change-Id: Id66e5be8ebbb3b6fc8fb406c1b6207d603f342d3
Signed-off-by: jgart <jgart@dismail.de>
2025-12-08 14:41:26 -06:00
jgart
d72ef2bc34
etc: Add jgart to hare team.
* etc/teams.scm: Make jgart a member of the hare team.

Change-Id: Ia3a9528a2b8e9451962c2e740e89918fad40484d
Signed-off-by: jgart <jgart@dismail.de>
2025-12-08 14:41:26 -06:00
jgart
6599a7d102
etc: Add hare team.
* etc/teams.scm (hare): New team.

Change-Id: I953983c923e5970c62a0d03b126f8373a2eecde0
Signed-off-by: jgart <jgart@dismail.de>
2025-12-08 14:41:26 -06:00
Lars-Dominik Braun
001004f83c
etc: Remove Lars from all teams.
* etc/teams.scm: Remove person entirely.

Change-Id: Ibd988110d2e574df4697d2d09c3252eba74e8401
2025-12-07 12:00:34 +01:00
Florian Pelz
b385d38a12
news: Add translations.
* etc/news.scm: Reuse 6.13 translation for linux-libre 6.16 removal entry,
because it is mostly the same.

Change-Id: Ib6ab35ed56534a133926950ed7a71972548070f4
2025-12-05 16:05:50 +01:00
Rutherther
bd2edc9e43
etc: Update SELinux rule file to support unprivileged daemon.
Fixes: #3576.

* etc/guix-daemon.cil.in: Add rules for unprivileged daemon.

Change-Id: Ic0c561036230d397f7071daef33ca8181684d014
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-12-05 14:54:39 +01:00
Leo Famulari
8f97b5b777
news: Add entry about linux-libre 6.16 removal.
* etc/news.scm: Add entry.

Change-Id: I5f999701abd59ac1962a50f1783a28b3f468d169
2025-12-04 22:59:40 -05:00
Ricardo Wurmus
c0682edbb3
etc: Add rekado to bioinformatics team.
* etc/teams.scm: Make rekado a member of the bioinformatics team.

Change-Id: I0a573882df36b40f1d510664bd086bb461a8e985
2025-12-03 13:37:56 +01:00
Ricardo Wurmus
0de8d6f51d
etc: Add bioinformatics team.
* etc/teams.scm (bioinformatics): New team.

Change-Id: Ic5d95df8a28e0bb575ef58a0e269b6e82e23cb6a
2025-12-03 13:37:56 +01:00
Giacomo Leidi
c425bac93d
Update Giacomo's email address.
The change was automated via:

git grep -l goodoldpaul@autistici.org |
    xargs sed -i 's/goodoldpaul@autistici.org/therewasa@fishinthecalculator.me/g'

* .mailmap: New entry.

Change-Id: I1629388334695d221647afe6a14faf61af5fe0d6
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-12-03 14:38:09 +09:00
Hartmut Goebel
ef04d631bd
etc: committer: Fix crashes when inputs only change order.
* etc/committer.scm.in (change-commit-message): Fix handling when package
inputs are the same but in different order.

Change-Id: I8760a7c8fb57c82d657b239a50c973ba81f9781f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-11-27 14:22:25 +01:00
Rutherther
f051e75598
teams: Add script to generate manifest for operating-system.
Takes an operating-system and generates a manifest out of the
packages that can be found in the records.

This script is not finished completely, it still requires manual
work after generation of the manifest. And it will not generate
a complete manifest! This is because the scripts contain additional
dependencies that aren't captured anywhere lower in the operating-system
record.

* etc/teams/release/os-manifest-generator.scm: Add script.

Change-Id: Ib9a5683a60e7fef1ce049b1c6c5ec4fc77ce6c58
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2025-11-23 10:52:37 +02:00
Rutherther
48ca028511
manifests: Split release manifest to two.
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>
2025-11-23 10:52:25 +02:00
Maxim Cournoyer
7bf43a7dd2
teams/gnome: Fix doc strings in refresh script.
* etc/teams/gnome/gnome-core-refresh (fetch-releng-content): Adjust doc.
(parse-releng): Likewise.

Change-Id: Ib6081081cb0b3e216e2b807ed0512be4b296528e
2025-11-23 11:22:21 +09:00
Andreas Enge
0f318edda7
teams: Add Andreas Enge to crypto team.
* etc/teams.scm ("Andreas Enge"): Add crypto team.

Change-Id: I7acef41c5d359333c1729680c7b7525c79c2a81d
2025-11-17 17:18:48 +01:00
Cayetano Santos
6fe5e7f707
etc: teams: Add crypto team.
* etc/teams.scm (crypto): New team.
[Cayetano Santos]: Add to new team.
* CODEOWNERS: Rebuild.

Change-Id: Ie51ff65629c5b65ec8ee148e4dddce6d39007b54
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-11-12 18:34:06 +01:00
Giacomo Leidi
f0119f0980
teams: Add Igorj Gorjaĉev.
* etc/teams.scm ("Igorj Gorjaĉev"): Add to BEAM team.

Change-Id: Ie3b06a7abf482271c6a69cc7bc601c0cc76801c8
Reviewed-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-11-09 19:56:46 +00:00
Giacomo Leidi
0059294572
teams: Add Pierre-Henry Fröhring.
* etc/teams.scm ("Pierre-Henry Fröhring"): Add to BEAM team.

Change-Id: I221cbf7659b357eb6f091ddc587e4eca1e7eb6e0
Reviewed-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-11-09 19:56:46 +00:00