1
0
forked from tribes/guix

Compare commits

..

15 Commits

Author SHA1 Message Date
Mathieu Othacehe 8b04431433 tests: Fix the git-http test.
The test fails because the fcgiwrap daemon that runs as "fcgiwrap" user cannot
access the /srv/git directory that is root-owned.

* gnu/tests/version-control.scm (run-git-http-test): Change the ownership
of /srv/git so that fcgiwrap can access it.

Change-Id: I01fa98e3311ac0dba88a4af21cee3ae0da986582
2025-10-21 14:20:58 +02:00
Mathieu Othacehe c7b40a2181 gnu: tests: Fix the gitile test.
The test fails because the gitile daemon that runs as "gitile" user cannot
access the /srv/git directory that is root-owned.

* gnu/tests/version-control.scm (%make-git-repository): Change the ownership
of /srv/git so that gitile can access it.

Change-Id: I01fa98e3311ac0dba88a4af21cee3ae0da986582
2025-10-21 13:56:02 +02:00
Mathieu Othacehe 5dca11e5e5 gnu: 389-ds-base: Fix LegacyVersion issue.
LegacyVersion does not exist anymore in packaging.version 25.0
(https://github.com/pypa/packaging/pull/407). Add a stub to prevent runtime
errors such as:

Traceback (most recent call last):
  File "/gnu/store/jq8iknqq5niwx9vchccbnnw6jdb3x8nq-389-ds-base-2.2.2/sbin/.dscreate-real", line 18, in <module>
    from lib389 import DirSrv
  File "/gnu/store/jq8iknqq5niwx9vchccbnnw6jdb3x8nq-389-ds-base-2.2.2/lib/python3.11/site-packages/lib389/__init__.py", line 54, in <module>
    from lib389._entry import Entry
  File "/gnu/store/jq8iknqq5niwx9vchccbnnw6jdb3x8nq-389-ds-base-2.2.2/lib/python3.11/site-packages/lib389/_entry.py", line 20, in <module>
    from lib389.utils import (ensure_str, ensure_bytes, ensure_list_bytes, display_log_data)
  File "/gnu/store/jq8iknqq5niwx9vchccbnnw6jdb3x8nq-389-ds-base-2.2.2/lib/python3.11/site-packages/lib389/utils.py", line 49, in <module>
    from packaging.version import LegacyVersion
ImportError: cannot import name 'LegacyVersion' from 'packaging.version' (/gnu/store/5ga1x27pz9wqwhq3sndcymfngdvcr4w9-python-packaging-bootstrap-25.0/lib/python3.11/site-packages/packaging/version.py)

* gnu/packages/patches/389-ds-base-legacy-version.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/openldap.scm (389-ds-base): Use it.

Change-Id: I34c12dce3092f9911383ae380af13ef74285ebc4
2025-10-21 13:15:40 +02:00
Mathieu Othacehe f91286326a gnu: 389-ds-base: Fix the build.
* gnu/packages/openldap.scm (389-ds-base)[arguments]<#:phases>: Fix the
certutil binary search.

Change-Id: Ic257b4820dd4943d0b3fdb46ba4104f1e13b5048
2025-10-21 10:27:21 +02:00
Mathieu Othacehe 7e0ecb5da2 Revert "installer: wait-service-online: Assume online for http errorful codes."
This reverts commit e59a33a6c0.
2025-10-18 16:18:32 +02:00
Mathieu Othacehe 28b947938a Revert "installer: wait-service-online: More urls to check user is online."
This reverts commit 55584781e9.
2025-10-18 16:18:31 +02:00
Mathieu Othacehe 3c9b8e0669 Revert "installer: wait-service-online: Allow user to proceed if offline."
This reverts commit 0b35df4c8b.
2025-10-18 16:18:30 +02:00
Mathieu Othacehe 638b8e40fd Revert "installer: network: Add step for substitute availability."
This reverts commit 9ea2174ba8.
2025-10-18 16:18:27 +02:00
Mathieu Othacehe 35114531e3 build: Add a system test runner.
Change-Id: I79a61e2df996e202ac43a0b6037df676fec4a414
2025-10-18 11:04:46 +02:00
Mathieu Othacehe 02545e381e tests: Fix opensmtpd.
Change-Id: I88db2c4b883a789359c402018c40804355040115
2025-10-18 11:04:46 +02:00
Mathieu Othacehe 3fbe5e4f9f tests: installer: Fix gui-installed-desktop-os-encrypted.
Change-Id: I9b94474124df4da87784157d25fe39a1887c743b
2025-10-18 11:04:46 +02:00
Mathieu Othacehe 80be6360be tests: installer: Display the final configuration file.
Change-Id: Ia5faf696a5244ece955616b4b9a350d057b93696
2025-10-18 11:04:45 +02:00
Mathieu Othacehe 410731c831 wip: Update guix.
Change-Id: I7f1794d2b9b08e10e7bd2682e41b6be39144b8ef
2025-10-18 11:04:45 +02:00
Mathieu Othacehe 612f8c3606 Revert "install: Do not leak local checkout URL."
This reverts commit 94c9e53fa4.
2025-10-18 11:04:45 +02:00
Mathieu Othacehe 3369f7d509 Revert "install: Adjust for (package-source guix) not being a <channel>."
This reverts commit 871f09b6f7.
2025-10-18 11:04:45 +02:00
749 changed files with 102293 additions and 518859 deletions
-1
View File
@@ -68,7 +68,6 @@
/doc/stamp-vti
/doc/version.texi
/doc/version-*.texi
/etc/apparmor.d/tunables/guix
/etc/committer.scm
/etc/gnu-store.mount
/etc/guix-daemon.cil
-5
View File
@@ -23,8 +23,6 @@
(name "cbaines"))
("3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5"
(name "civodul"))
("CCB8 1842 F9D7 058E CD67 377A BF5C DF4D F6BF 6682"
(name "csantosb"))
("510A 8628 E2A7 7678 8F8C 709C 4BC0 2592 5FF8 F4D3"
(name "cwebber"))
(;; primary: "295A F991 6F46 F8A1 34B0 29DA 8086 3842 F0FE D83B"
@@ -100,9 +98,6 @@
;; <https://lists.gnu.org/archive/html/guix-devel/2020-01/msg00499.html>.
"1EFB 0909 1F17 D28C CBF9 B13A 53D4 57B2 D636 EE82"
(name "roptat"))
(;; primary: "3AC5 5D0E 1DA7 AF44 3868 11EE 213D C372 0E7A 023C"
"6B51 071A 0FB1 52AD ED93 6360 0322 7982 69E4 71C3"
(name "Rutherther"))
("EAD1 89E4 799B 5E5E B20A 2A19 CDBC 0BD9 5943 A706"
(name "SameExpert"))
(;; primary: "D6B0 C593 DA8C 5EDC A44C 7A58 C336 91F7 1188 B004"
-2
View File
@@ -30,7 +30,6 @@ Eric Bavier <bavier@posteo.net> <bavier@member.fsf.org>
Eric Dvorsak <eric@dvorsak.fr> <yenda1@gmail.com>
Evgeny Pisemsky <mail@pisemsky.site> <evgeny@pisemsky.com>
George Clemmer <myglc2@gmail.com>
Giacomo Leidi <therewasa@fishinthecalculator.me> <goodoldpaul@autistici.org>
ison <ison@airmail.cc> <ison111@protonmail.com>
Ivan Vilata i Balaguer <ivan@selidor.net>
Jakob L. Kreuze <zerodaysfordays@sdf.org> <zerodaysfordays@sdf.lonestar.org>
@@ -59,7 +58,6 @@ Mathieu Othacehe <mathieu.othacehe@parrot.com>
Mathieu Othacehe <othacehe@gnu.org>
Matthew James Kraai <kraai@ftbfs.org>
Maxim Cournoyer <maxim@guixotic.coop> <maxim.cournoyer@gmail.com>
Nguyễn Gia Phong <cnx@loang.net> <mcsinyx@disroot.org>
Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
nikita <nikita@n0.is>
nikita <nikita@n0.is> ng0 <ng0@n0.is>
+1 -29
View File
@@ -12,17 +12,6 @@ gnu/packages/audio\.scm @guix/audio
gnu/packages/fluidplug\.scm @guix/audio
gnu/packages/xiph\.scm @guix/audio
gnu/packages/elixir(-.+|)\.scm$ @guix/beam
guix/build/mix-build-system\.scm @guix/beam
guix/build-system/mix\.scm @guix/beam
gnu/packages/erlang(-.+|)\.scm$ @guix/beam
guix/build/rebar-build-system\.scm @guix/beam
guix/build-system/rebar\.scm @guix/beam
guix/import/hexpm\.scm @guix/beam
guix/scripts/import/hexpm\.scm @guix/beam
gnu/packages/bioinformatics\.scm @guix/bioinformatics
gnu/packages/commencement\.scm @guix/bootstrap
gnu/packages/mes\.scm @guix/bootstrap
@@ -129,14 +118,6 @@ guix/build/gnu-build-system\.scm @guix/core-packages
guix/build/utils\.scm @guix/core-packages
guix/build-system/gnu\.scm @guix/core-packages
gnu/packages/crypto\.scm @guix/crypto
gnu/packages/gnupg\.scm @guix/crypto
gnu/packages/nettle\.scm @guix/crypto
gnu/packages/password-utils\.scm @guix/crypto
gnu/packages/security-token\.scm @guix/crypto
gnu/packages/ssh\.scm @guix/crypto
gnu/packages/tls\.scm @guix/crypto
gnu/packages/debian\.scm @guix/debian
\.texi$ @guix/documentation
@@ -193,12 +174,6 @@ guix/import/go\.scm @guix/go
guix/scripts/import/go\.scm @guix/go
tests/import/go\.scm @guix/go
gnu/packages/hare\.scm @guix/hare
gnu/packages/hare-apps\.scm @guix/hare
gnu/packages/hare-xyz\.scm @guix/hare
guix/build-system/hare\.scm @guix/hare
guix/build/hare-build-system\.scm @guix/hare
gnu/packages/dhall\.scm @guix/haskell
gnu/packages/haskell(-.+|)\.scm$ @guix/haskell
gnu/packages/purescript\.scm @guix/haskell
@@ -215,7 +190,6 @@ tests/home-import\.scm @guix/home
tests/home-services\.scm @guix/home
gnu/packages/mpi\.scm @guix/hpc
gnu/packages/oneapi\.scm @guix/hpc
gnu/packages/rocm\.scm @guix/hpc
gnu/packages/sycl\.scm @guix/hpc
gnu/packages/tbb\.scm @guix/hpc
@@ -317,8 +291,7 @@ gnu/packages/chez\.scm @guix/racket
gnu/packages/racket\.scm @guix/racket
NEWS @guix/release
etc/manifests/release-minimal\.scm @guix/release
etc/manifests/release-desktop\.scm @guix/release
etc/manifests/release\.scm @guix/release
gnu/packages/diffoscope\.scm @guix/reproduciblebuilds
@@ -373,7 +346,6 @@ gnu/packages/openldap\.scm @guix/sysadmin
gnu/packages/openstack\.scm @guix/sysadmin
gnu/packages/prometheus\.scm @guix/sysadmin
gnu/packages/rdesktop\.scm @guix/sysadmin
gnu/packages/samba\.scm @guix/sysadmin
gnu/packages/selinux\.scm @guix/sysadmin
gnu/packages/storage\.scm @guix/sysadmin
gnu/packages/task-runners\.scm @guix/sysadmin
+57 -59
View File
@@ -14,7 +14,7 @@
# Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
# Copyright © 2019, 2023 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2020, 2021, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
# Copyright © 2020, 2021, 2023 Maxim Cournoyer <maxim@guixotic.coop>
# Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
# Copyright © 2021 Andrew Tropin <andrew@trop.in>
# Copyright © 2023 Clément Lassieur <clement@lassieur.org>
@@ -170,7 +170,6 @@ MODULES = \
guix/build-system/gnu.scm \
guix/build-system/go.scm \
guix/build-system/guile.scm \
guix/build-system/hare.scm \
guix/build-system/haskell.scm \
guix/build-system/julia.scm \
guix/build-system/linux-module.scm \
@@ -241,7 +240,6 @@ MODULES = \
guix/build/gnu-build-system.scm \
guix/build/gnu-dist.scm \
guix/build/guile-build-system.scm \
guix/build/hare-build-system.scm \
guix/build/luanti-build-system.scm \
guix/build/maven-build-system.scm \
guix/build/minetest-build-system.scm \
@@ -376,7 +374,6 @@ MODULES = \
guix/scripts/import/luanti.scm \
guix/scripts/import/minetest.scm \
guix/scripts/import/npm-binary.scm \
guix/scripts/import/nuget.scm \
guix/scripts/import/opam.scm \
guix/scripts/import/pypi.scm \
guix/scripts/import/stackage.scm \
@@ -453,10 +450,11 @@ AUX_FILES = \
gnu/packages/aux-files/findclass.php \
gnu/packages/aux-files/guix.vim \
gnu/packages/aux-files/guix-nvim.vim \
gnu/packages/aux-files/linux-libre/6.17-arm64.conf \
gnu/packages/aux-files/linux-libre/6.17-i686.conf \
gnu/packages/aux-files/linux-libre/6.17-riscv.conf \
gnu/packages/aux-files/linux-libre/6.17-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.16-arm.conf \
gnu/packages/aux-files/linux-libre/6.16-arm64.conf \
gnu/packages/aux-files/linux-libre/6.16-riscv.conf \
gnu/packages/aux-files/linux-libre/6.16-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.16-i686.conf \
gnu/packages/aux-files/linux-libre/6.12-arm.conf \
gnu/packages/aux-files/linux-libre/6.12-arm64.conf \
gnu/packages/aux-files/linux-libre/6.12-i686.conf \
@@ -506,8 +504,7 @@ EXAMPLES = \
gnu/system/examples/plasma.tmpl \
gnu/system/examples/raspberry-pi-64.tmpl \
gnu/system/examples/raspberry-pi-64-nfs-root.tmpl \
gnu/system/examples/vm-image.tmpl \
gnu/system/examples/vm-image-efi.tmpl
gnu/system/examples/vm-image.tmpl
GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go $(dist_noinst_DATA:%.scm=%.go)
@@ -589,7 +586,6 @@ SCM_TESTS = \
tests/http-client.scm \
tests/inferior.scm \
tests/ipfs.scm \
tests/ld-wrapper.scm \
tests/lint.scm \
tests/modules.scm \
tests/monads.scm \
@@ -726,7 +722,7 @@ endif !CAN_RUN_TESTS
check-system: $(GOBJECTS)
$(AM_V_at)$(top_builddir)/pre-inst-env \
guix build -m $(top_srcdir)/etc/manifests/system-tests.scm -K
guix repl -- $(top_srcdir)/build-aux/run-system-tests.scm -K
# Public keys used to sign substitutes.
dist_pkgdata_DATA = \
@@ -748,14 +744,6 @@ dist_fishcompletion_DATA = etc/completion/fish/guix.fish
# SELinux policy
nodist_selinux_policy_DATA = etc/guix-daemon.cil
# AppArmor profiles.
dist_apparmor_profile_DATA = \
etc/apparmor.d/guix \
etc/apparmor.d/guix-daemon
nodist_apparmor_profile_tunables_DATA = \
etc/apparmor.d/tunables/guix
EXTRA_DIST += \
.dir-locals.el \
.guix-authorizations \
@@ -773,12 +761,9 @@ EXTRA_DIST += \
build-aux/compile-as-derivation.scm \
build-aux/config.rpath \
build-aux/convert-xref.scm \
build-aux/cuirass/evaluate.scm \
build-aux/extract-syscall-ranges.sh \
build-aux/generate-authors.scm \
build-aux/gitlog-to-changelog \
build-aux/git-version-gen \
build-aux/keep-only-translated.scm \
build-aux/mdate-from-git.scm \
build-aux/test-driver.scm \
build-aux/update-NEWS.scm \
@@ -792,9 +777,7 @@ EXTRA_DIST += \
etc/manifests/disarchive.scm \
etc/manifests/hurd.scm \
etc/manifests/kernels.scm \
etc/manifests/release-minimal.scm \
etc/manifests/release-desktop.scm \
etc/manifests/release-user-packages.scm \
etc/manifests/release.scm \
etc/manifests/source.scm \
etc/manifests/system-tests.scm \
etc/manifests/time-travel.scm \
@@ -1147,18 +1130,12 @@ system_flags = $(foreach system,$(1),-s $(system))
# 5. Build the installation and VM images. The images will run 'guix'
# corresponding to 'vX.Y.Z' + 1 commit, and they will install 'vX.Y.Z'.
#
# This is split into two targets, because a commit is made that has to be
# pushed to Guix.
# First, 'prepare-release' should be run, doing steps 1 and 2.
# Then, the resulting commit should be pushed so that it's available
# to be downloaded for the system images.
# Afterwards, the 'release' target takes care of the rest. This 'release'
# target takes care of everything and copies the resulting files to
# $(releasedir).
# This 'release' target takes care of everything and copies the resulting
# files to $(releasedir).
#
# XXX: Depend on 'dist' rather than 'distcheck' to work around the Gettext
# issue described at <https://savannah.gnu.org/bugs/index.php?51027>.
prepare-release: dist-with-updated-version all
release: dist-with-updated-version all
@if ! git diff-index --quiet HEAD; then \
echo "There are uncommitted changes; stopping." >&2 ; \
exit 1 ; \
@@ -1176,26 +1153,48 @@ prepare-release: dist-with-updated-version all
$(top_builddir)/pre-inst-env guix build guix \
$(call system_flags,$(SUPPORTED_SYSTEMS)) \
-v1 --no-grafts --fallback
@echo
@echo "First step done! Source tarball is ready in $(releasedir)"
@echo "Now push the resulting commit and run `make release`."
@echo
# Make sure you've ran prepare-release prior to running release and pushed
# the commit to Guix. It might be pushed to any branch, such as version-X.Y.Z.
release: all
# Build the artifacts for current commit.
# Use time-machine for provenance.
$(MKDIR_P) "$(releasedir)"
@echo "Building guix inferior for current commit."
COMMIT="$$(git rev-parse HEAD)" && \
GUIX="$$(guix time-machine -q --commit=$$COMMIT)/bin/guix" && \
echo "Building artifacts for current commit: $$COMMIT." && \
ARTIFACTS="$$($$GUIX build --no-grafts \
-f ./etc/teams/release/artifacts.scm)" && \
echo "Artifacts built! Copying to $(releasedir)" && \
cp -f "$$ARTIFACTS"/* "$(releasedir)"
# Generate the binary release tarballs.
rm -f $(BINARY_TARBALLS)
$(MAKE) $(BINARY_TARBALLS)
for system in $(SUPPORTED_SYSTEMS) ; do \
mv "guix-binary.$$system.tar.xz" \
"$(releasedir)/guix-binary-$(PACKAGE_VERSION).$$system.tar.xz" ; \
done
# Build 'current-guix' to speed things up for the next step.
$(top_builddir)/pre-inst-env guix build \
-e '((@ (gnu packages package-management) current-guix))' \
$(call system_flags,$(GUIX_SYSTEM_INSTALLER_SYSTEMS)) \
-v1 --no-grafts --fallback
# Generate the ISO installation images.
for system in $(GUIX_SYSTEM_INSTALLER_SYSTEMS) ; do \
GUIX_DISPLAYED_VERSION="`git describe --match=v* | sed -'es/^v//'`" ; \
image=`$(top_builddir)/pre-inst-env \
guix system image -t iso9660 \
--label="GUIX_$${system}_$(VERSION)" \
--system=$$system --fallback \
gnu/system/install.scm` ; \
if [ ! -f "$$image" ] ; then \
echo "failed to produce Guix installation image for $$system" >&2 ; \
exit 1 ; \
fi ; \
cp "$$image" "$(releasedir)/$(GUIX_SYSTEM_IMAGE_BASE).$$system.iso.tmp" ; \
mv "$(releasedir)/$(GUIX_SYSTEM_IMAGE_BASE).$$system.iso.tmp" \
"$(releasedir)/$(GUIX_SYSTEM_IMAGE_BASE).$$system.iso" ; \
done
# Generate the VM images.
for system in $(GUIX_SYSTEM_VM_SYSTEMS) ; do \
GUIX_DISPLAYED_VERSION="`git describe --match=v* | sed -'es/^v//'`" ; \
image=`$(top_builddir)/pre-inst-env \
guix system image -t qcow2 $(GUIX_SYSTEM_VM_IMAGE_FLAGS) \
--save-provenance \
--system=$$system --fallback \
gnu/system/examples/vm-image.tmpl` ; \
if [ ! -f "$$image" ] ; then \
echo "failed to produce Guix VM image for $$system" >&2 ; \
exit 1 ; \
fi ; \
cp "$$image" "$(releasedir)/$(GUIX_SYSTEM_VM_IMAGE_BASE).$$system.qcow2"; \
done
@echo
@echo "Congratulations! All the release files are now in $(releasedir)."
@echo
@@ -1234,10 +1233,9 @@ assert-no-store-file-names:
# Make sure installer substitutes are available. Check only the primary
# server so that '--display-missing' doesn't print two lists.
assert-binaries-available: $(GOBJECTS)
$(AM_V_at)$(top_builddir)/pre-inst-env \
guix weather -m "$(top_srcdir)/etc/manifests/release-minimal.scm" \
-m "$(top_srcdir)/etc/manifests/release-desktop.scm" \
--substitute-urls="https://ci.guix.gnu.org" \
$(AM_V_at)$(top_builddir)/pre-inst-env \
guix weather -m "$(top_srcdir)/etc/manifests/release.scm" \
--substitute-urls="https://ci.guix.gnu.org" \
--display-missing
# Make sure the final inputs don't refer to bootstrap tools.
+5 -75
View File
@@ -6,7 +6,6 @@ Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
Copyright © 2021, 2022, 2024 Maxim Cournoyer <maxim@guixotic.coop>
Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
Copyright © 2026 Noé Lopez <noelopez@free.fr>
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@@ -17,77 +16,8 @@ Please send Guix bug reports to bug-guix@gnu.org.
* Changes in 1.5.0 (since 1.4.0)
** Package management
*** New rpm format for the guix pack command
*** New appimage format for the guix pack command
*** New --max-layers and --file options for the guix pack command
*** New --roll-back and --expression options for the guix deploy command
*** New --with-version package transformation option
*** New --with-configure-flag package transformation option
*** New --nesting option to use Guix within guix shell containers
*** New --emulate-fhs option for guix shell containers
*** New --dependents and --development options for guix build
*** New --interactive and --list-types flags for guix repl
*** The root file-system of guix shell containers is now read-only
*** New --writable-root option for the guix shell command
*** Improved style rules for guix style
*** New guix locate command
*** guix refresh now honours the --key-server option
*** guix git authenticate now remembers introduction commit and signer
*** guix git authenticate now installs pre-push and post-merge git hooks
*** System reconfiguration now supports kexec for fast reboot
*** Hetzner Cloud is now supported by the guix deploy command
*** The Guix Daemon can now be run without root privileges
*** guix refresh can now target partial version
*** New guix import composer command
*** New guix import binary-npm command
*** New guix import nuget command
*** New graphml backend for guix graph
*** New cyclonedx-json backend for guix graph
*** AppArmor profiles are now available for guix and guix-daemon
** Distribution
*** nss-certs is now included in %base-packages
*** udev-service-type now supports hardware configuration files
*** gdm-service-type now uses Wayland by default
*** KDE Plasma 6.5 is now available with the new plasma-desktop-service-type
*** GNOME was updated to version 44 with a more modular desktop service
*** Declarative offloading with new build-machines field of operating-system
*** containerd-service-type is no longer included with the Docker service
*** privileged-programs replaces setuid-programs in operating-system
*** The postgresql field of postgresql-configuration is now mandatory
*** The Rottlog service was replaced by new log-rotation-service-type
*** The default system log has been changed to Shepherds system-log service
*** New recommended %base-home-services variable for Guix Home
*** UDisks now mounts removable devices in /run/media/$USER instead of /media
*** Syncthing service received incompatible changes
*** node-build-system received incompatible changes
*** New services for /etc/profile.d and /etc/bashrc.d
*** New build system for clasp-cl
*** New Rust packaging model
*** C.utf8 locale is now supported by glibc
*** Fully bootstrapped mono and zig are now available
*** 64bit Hurd (x86_64-gnu) now has experimental support
*** 12525 new packages
*** 8911 package updates
Noteworthy updates:
bash 5.2.37, binutils 2.44, clojure 1.12.0, cups 2.4.14, emacs 30.2,
gcc-toolchain 15.2.0, gdb 16.3, ghc 9.2.8, gimp 3.0.4, glibc 2.41,
gnome 46.10, gnupg 2.4.7, go 1.25.3, guile 3.0.9, icecat 140.6.0-gnu1,
icedtea 3.19.0, inkscape 1.3.2, julia 1.8.5, libreoffice 25.2.5.2,
linux-libre 6.17.12, lxde 0.99.3, mate 1.28.2, ocaml 5.3.0, octave 10.3.0,
openjdk 25, perl 5.36.0, python 3.11.14, racket 8.18, rust 1.85.1, r 4.5.2,
sbcl 2.5.8, shepherd 1.0.9, xfce 4.20.0, xorg-server 21.1.21
** Programming interfaces
*** (gnu system setuid) has been renamed to (gnu system privilege)
*** Moved to a new Rust packaging model and repackaged all Rust applications
*** Rust library packages have been moved to the guix-rust-past-crates channel
*** Most Python packages now use the pyproject-build-system
** Noteworthy bug fixes
*** Daemon vulnerability allowing store corruption has been fixed
*** Daemon vulnerability allowing takeover of build users has been fixed
*** Daemon privilege escalation vulnerabilities fixed
*** Daemon CVEs have been fixed
CVE-2024-27297, CVE-2024-52867, CVE-2025-46415, CVE-2025-46416, CVE-2025-59378
* Changes in 1.4.0 (since 1.3.0)
** Package management
*** New guix home command, for home environment management
@@ -1996,7 +1926,7 @@ zynaddsubfx@3.0.3, zziplib@0.13.69
*** guix pack now honors package transformation options
*** guix package --search no longer shows superseded packages
(<https://bugs.gnu.org/30566>)
*** guix offload test reports errors more nicely
*** guix offload test reports errors more nicely
(<https://bugs.gnu.org/28057>)
*** postgresql service is started through pg_ctl
(<https://bugs.gnu.org/29992>)
@@ -5734,7 +5664,7 @@ Monad” in the manual.
*** X session is executed from a login shell (<http://bugs.gnu.org/19119>)
*** grub.cfg is now a garbage-collector root (<http://bugs.gnu.org/19160>)
*** Substituter progress report properly formatted
*** Substituter progress report properly formatted
(<http://bugs.gnu.org/19313>)
*** Document permissions for /gnu/store (<http://bugs.gnu.org/19316>)
*** Make sure config.go is newer than config.scm
@@ -5990,18 +5920,18 @@ This could cause problems with ancient Linux kernel.
*** download: Use the 'SERVER NAME' TLS extension when possible
(<http://bugs.gnu.org/18526>)
*** libdaemon: Add alternate source URLs (<http://bugs.gnu.org/18639>)
*** icu4c: Reinstate RUNPATH on shared libraries
*** icu4c: Reinstate RUNPATH on shared libraries
(<http://bugs.gnu.org/18695>)
*** nss-mdns: Add alternate source URLs (<http://bugs.gnu.org/18704>)
*** download: Add "Accept: */*" to the HTTP headers
(<http://bugs.gnu.org/18768>)
*** guix-register: Do not attempt to create NIX_STORE_DIR
*** guix-register: Do not attempt to create NIX_STORE_DIR
(<http://bugs.gnu.org/18689>)
*** Allow Linux-libre to find our 'modprobe' command
(<http://bugs.gnu.org/18525>)
*** man-pages: Build sequentially (<http://bugs.gnu.org/18701>)
*** Fix intermittent test failures involving GC (<http://bugs.gnu.org/18935>)
*** guix import: pypi: Gracefully handle non-existent packages
*** guix import: pypi: Gracefully handle non-existent packages
(<http://bugs.gnu.org/18831>)
*** Make sure the shared library has the '.so' extension
(<http://bugs.gnu.org/18521>)
@@ -50,7 +50,7 @@
directory))
((_ . directory) directory))
(derivation->output-paths drv)))))
(%final-inputs system)))
%final-inputs))
(define (assert-valid-substitute substitute)
"Make sure SUBSTITUTE does not refer to any bootstrap inputs, and bail out
+228
View File
@@ -0,0 +1,228 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Mathieu Othacehe <othacehe@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(use-modules (gnu)
(gnu tests)
(gnu packages package-management)
(guix)
(guix colors)
((guix build utils)
#:select (delete-file-recursively))
(guix store)
(guix packages)
(guix utils)
(guix ui)
(guix build syscalls)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 getopt-long)
(ice-9 match)
(ice-9 exceptions)
(ice-9 pretty-print)
(ice-9 rdelim)
(web uri))
;; Version of the script.
(define script-version "0.1")
;; Directory for the system test logs.
(define tmpdir (mkdtemp! "/tmp/system-tests-XXXXXX"))
;; Save the stdout and stderr ports.
(define output-port (duplicate-port (current-output-port) "w0"))
(define error-port (duplicate-port (current-error-port) "w0"))
;; List of all the system tests, sorted alphabetically.
(define all-sorted-tests
(sort (all-system-tests)
(lambda (a b)
(string<? (system-test-name a) (system-test-name b)))))
(define (test->log-file test)
"Return the name of the log file for the given system TEST."
(format #f "~a/~a.log" tmpdir (system-test-name test)))
(define (print-failure)
"Print a failure message."
(format output-port
(colorize-string "FAIL" (color RED BOLD)))
(format output-port "~%"))
(define (print-success)
"Print a success message."
(format output-port
(colorize-string "OK" (color GREEN BOLD)))
(format output-port "~%"))
(define* (run-system-test test #:key redirect-output?)
"Run the given system-test and redirect the test output to a file.
Return true if the test is successful and false otherwise."
(define log-port
(and redirect-output?
(open-output-file (test->log-file test))))
(dynamic-wind
(lambda ()
(when redirect-output?
(redirect-port log-port (current-output-port))
(redirect-port log-port (current-warning-port))
(redirect-port log-port (current-error-port))))
(lambda ()
(parameterize ((current-build-output-port
(if redirect-output?
log-port
(current-build-output-port))))
(let ((store (open-connection)))
(run-with-store store
(mlet %store-monad
((drv (lower-object test)))
(return
(guard (c ((store-protocol-error? c)
(print-failure)
#f))
(and (build-derivations store (list drv))
(print-success)))))))))
(lambda ()
(and redirect-output?
(close-port log-port)))))
(define* (print-results results #:key keep-logs)
"Use RESULTS, a list of booleans, to print out the test results. If
some tests are failing, exit with the error code 1. Otherwise, exit with
success."
(let* ((ok-count (count identity results))
(fail-count (- (length results) ok-count)))
(format output-port "~%")
(if keep-logs
(format output-port "Test results are available in ~a~%" tmpdir)
(delete-file-recursively tmpdir))
(if (= fail-count 0)
(begin
(format output-port "All system tests are successful.~%")
(exit 0))
(begin
(format output-port "~a failing test~a~%" fail-count
(if (> fail-count 1) "s" ""))
(exit 1)))))
(define* (run-tests tests #:key keep-logs redirect-output?)
"Run all the given TESTS. If KEEP-LOGS is set to true, keep the system test
log files."
(let* ((count (length tests))
(indexes (iota count)))
(print-results
(map (lambda (index test)
(format output-port "Running ~a (~a/~a): "
(system-test-name test)
(1+ index) count)
(force-output output-port)
(run-system-test test #:redirect-output? redirect-output?))
indexes tests)
#:keep-logs keep-logs)))
(define (subset-tests tests subset)
"Return the subset of TESTS that are also in the given SUBSET list."
(filter
(lambda (test)
(let ((name (system-test-name test)))
(member name subset)))
tests))
(define (exclude-tests tests excludes)
"Return the given TESTS list without the tests that are part of the EXCLUDES
list."
(filter
(lambda (test)
(let ((name (system-test-name test)))
(not (member name excludes))))
tests))
(define (show-help)
(display "Usage: run-system-tests.scm [OPTIONS]
Run the system tests.\n")
(display " --tests=TEST1,TEST2,... run only TEST1 and TEST2")
(newline)
(display " --exclude-tests=TEST1,TEST2,... run all tests but TEST1 and TEST2")
(newline)
(display " --list-tests list all the system tests")
(newline)
(display " -n, --no-redirect do not redirect the test logs")
(newline)
(display " -K, --keep-logs keep the test logs")
(newline)
(display " -h, --help display this help and exit")
(newline)
(display " -V, --version display verson information and exit")
(newline))
(define %options
'((tests (value #t))
(exclude-tests (value #t))
(list-tests (value #f))
(keep-logs (single-char #\K) (value #f))
(no-redirect (single-char #\n) (value #f))
(help (single-char #\h) (value #f))
(version (single-char #\V) (value #f))))
(define (main . args)
(define guix-source
(canonicalize-path
(string-append (current-source-directory) "/..")))
;; Use the local Guix as the current-guix-package so that we do not compute
;; the Guix derivation over and over.
(define guix-local
(package
(inherit guix)
(source (local-file guix-source #:recursive? #t))
(arguments
(substitute-keyword-arguments (package-arguments guix)
((#:tests? #f #f) #f)))))
(let* ((opts (getopt-long (command-line) %options))
(option (cut option-ref opts <> <>))
(keep-logs (option 'keep-logs #f))
(no-redirect (option 'no-redirect #f)))
(cond
((option 'help #f)
(show-help))
((option 'version #f)
(format #t "run-system-tests.scm ~A~%" script-version))
((option 'list-tests #f)
(format #t "System tests:~%~{- ~a~%~}"
(map (lambda (test)
(system-test-name test))
all-sorted-tests)))
(else
(let* ((subset
(and=> (option 'tests #f)
(cut string-split <> #\,)))
(excludes
(and=> (option 'exclude-tests #f)
(cut string-split <> #\,)))
(tests
(cond
(excludes (exclude-tests all-sorted-tests excludes))
(subset (subset-tests all-sorted-tests subset))
(else all-sorted-tests))))
(parameterize ((current-guix-package guix-local))
(run-tests tests
#:keep-logs keep-logs
#:redirect-output? (not no-redirect))))))))
(apply main (cdr (command-line)))
+1 -17
View File
@@ -21,7 +21,7 @@
AC_PREREQ([2.69])
AC_INIT([GNU Guix],
[m4_esyscmd([build-aux/git-version-gen .tarball-version])],
[https://codeberg.org/guix/guix/issues/], [guix],
[bug-guix@gnu.org], [guix],
[https://www.gnu.org/software/guix/])
AC_CONFIG_AUX_DIR([build-aux])
@@ -81,15 +81,6 @@ AC_ARG_WITH([selinux-policy-dir],
[selinux_policydir='${datadir}/selinux/'])
AC_SUBST([selinux_policydir])
AC_ARG_WITH([apparmor-profile-dir],
AS_HELP_STRING([--with-apparmor-profile-dir=DIR],
[name of the AppArmor profile directory]),
[apparmor_profiledir="$withval"],
[apparmor_profiledir='${sysconfdir}/apparmor.d'])
AC_SUBST([apparmor_profiledir])
apparmor_profile_tunablesdir='${apparmor_profiledir}/tunables'
AC_SUBST([apparmor_profile_tunablesdir])
dnl Better be verbose.
AC_MSG_CHECKING([for the store directory])
AC_MSG_RESULT([$storedir])
@@ -198,12 +189,6 @@ if test "x$have_guile_lzlib" != "xyes"; then
AC_MSG_ERROR([Guile-lzlib is missing; please install it.])
fi
dnl Check for Guile-semver.
GUILE_MODULE_AVAILABLE([have_guile_semver], [(semver)])
if test "x$have_guile_semver" != "xyes"; then
AC_MSG_ERROR([Guile-semver is missing; please install it.])
fi
dnl Check for Guile-Avahi.
GUILE_MODULE_AVAILABLE([have_guile_avahi], [(avahi)])
AM_CONDITIONAL([HAVE_GUILE_AVAHI],
@@ -323,7 +308,6 @@ AC_CONFIG_FILES([Makefile
po/guix/Makefile.in
po/packages/Makefile.in
etc/guix-daemon.cil
etc/apparmor.d/tunables/guix
guix/config.scm])
AC_CONFIG_FILES([etc/committer.scm], [chmod +x etc/committer.scm])
+5 -7
View File
@@ -72,7 +72,7 @@
(define %cookbook-languages
;; Available translations for the 'guix-cookbook' text domain.
'("de" "en" "es" "fr" "it" "ko" "pt_BR" "ru" "sk" "sv" "ta" "zh_CN"))
'("de" "en" "es" "fr" "it" "ko" "pt_BR" "ru" "sk" "sv" "zh_CN"))
(define %languages
;; Available translations for the document being built.
@@ -82,7 +82,7 @@
(define %latest-guix-version
;; Latest released version.
"1.5.0")
"1.4.0")
(define (texinfo-manual-images source)
"Return a directory containing all the images used by the user manual, taken
@@ -777,8 +777,7 @@ in SOURCE."
(define version-links
(list (menu-item #$latest-version
(string-append
"/manual/" #$latest-version
"/" language
"/manual/" language
(if split-node? "/html_node" "")))
(menu-item "development"
(string-append
@@ -943,8 +942,7 @@ makeinfo OPTIONS."
(let* ((texi (language->texi-file-name language))
(opts `("--html"
"-c" ,(string-append "TOP_NODE_UP_URL=/manual/"
#$%latest-guix-version
"/" language)
language)
#$@options
,texi)))
(format #t "building HTML manual for language '~a'...~%"
@@ -1302,7 +1300,7 @@ must be the Guix top-level source directory, from which PO files are taken."
language))
".html")))
"HTML, entirely on one page"))
,@(if (member language '("ko" "ru" "ta"))
,@(if (member language '("ko" "ru"))
'()
`((li (a (@ (href ,(string-append
#$manual
+8 -22
View File
@@ -138,7 +138,6 @@ version from the Git repository:
@example
git clone https://git.guix.gnu.org/guix.git
cd guix
@end example
@cindex authentication, of a Guix checkout
@@ -178,7 +177,6 @@ guix shell -D guix -CPW
or even, from within a Git worktree for Guix:
@example
echo $(pwd) >> ~/.config/guix/shell-authorized-directories
guix shell -CPW
@end example
@@ -186,10 +184,6 @@ If @option{-C} (short for @option{--container}) is not supported on your
system, try @command{--pure} instead of @option{-CPW}.
@xref{Invoking guix shell}, for more information on that command.
Most of the test suite runs without an internet connection. The @option{-N}
(short for @option{--network}) can be added to the @code{guix shell} command
to run the tests that require internet access.
If you are unable to use Guix when building Guix from a checkout, the
following are the required packages in addition to those mentioned in the
installation instructions (@pxref{Requirements}).
@@ -203,11 +197,11 @@ installation instructions (@pxref{Requirements}).
@item @url{https://www.gnu.org/software/help2man/, GNU Help2man (optional)}.
@end itemize
On Guix, other development tools, like @code{strace}, can be included by
giving them as extra arguments to @command{guix shell}:
On Guix, extra dependencies can be added by instead running @command{guix
shell}:
@example
guix shell -D guix -CPW strace
guix shell -D guix help2man git strace --pure
@end example
From there you can generate the build system infrastructure
@@ -3350,21 +3344,13 @@ for @b{at least one year}. For example, @code{go-ipfs} was renamed to
change to users, the package module provided this definition:
@findex deprecated-package
@findex define-deprecated-package
@lisp
(define-deprecated-package go-ipfs
kubo)
(define-public go-ipfs
(deprecated-package "go-ipfs" kubo))
@end lisp
That way, someone running @command{guix install go-ipfs} or similar sees
a deprecation warning mentioning the new package name; likewise, someone
referring to the @code{go-ipfs} @emph{variable} from their manifest or
package definition will see a warning.
Under the hood, @code{define-deprecated-package} combines
@code{define-deprecated/public-alias} to mark the variable as deprecated
(see below), and the @code{deprecated-package} procedure to mark the
package name as deprecated.
a deprecation warning mentioning the new name.
@cindex package removal policy
@anchor{package-removal-policy}
@@ -3374,8 +3360,8 @@ of life'' or being unmaintained may be removed; likewise, packages that
have been @b{failing to build for two months or more} may be removed.
There is no formal deprecation mechanism for this case, unless a
replacement exists, in which case the @code{define-deprecated-package}
macro mentioned above can be used.
replacement exists, in which case the @code{deprecated-package}
procedure mentioned above can be used.
If the package being removed is a ``leaf'' (no other packages depend on
it), it may be removed after a @b{one-month review period} of the patch
+17 -14
View File
@@ -77,9 +77,8 @@ Italian (@pxref{Top,,, guix-cookbook.it, Ricettario di GNU Guix}),
Brazilian Portuguese (@pxref{Top,,, guix-cookbook.pt_BR,
Livro de receitas do GNU Guix}), Russian (@pxref{Top,,, guix-cookbook.ru,
GNU Guix Рецепты}), Slovak (@pxref{Top,,, guix-cookbook.sk,
Receptár GNU Guix}), Swedish (@pxref{Top,,, guix-cookbook.sv,
Kokbok för GNU Guix}), and Tamil (@pxref{Top,,, guix-cookbook.ta,
GNU Guix கையேடு}). If you would like to translate
Receptár GNU Guix}), and Swedish (@pxref{Top,,, guix-cookbook.sv,
Kokbok för GNU Guix}). If you would like to translate
this document in your native language, consider joining
@uref{https://translate.codeberg.org/projects/guix/documentation-cookbook,
Weblate} (@pxref{Translating Guix,,, guix, GNU Guix Reference
@@ -293,7 +292,7 @@ Examples of valid expressions:
@result{} 17
(display (string-append "Hello " "Guix" "\n"))
@print{} Hello Guix
@print{} Hello Guix!
@result{} #<unspecified>
@end lisp
@@ -505,6 +504,10 @@ selection of documents to learn more about Scheme:
@uref{https://spritely.institute/static/papers/scheme-primer.html, @i{A
Scheme Primer}}, by Christine Lemmer-Webber and the Spritely Institute.
@item
@uref{http://www.troubleshooters.com/codecorn/scheme_guile/hello.htm,
@i{Scheme at a Glance}}, by Steve Litt.
@item
@c There used to be a copy at mitpress.mit.edu but it vanished.
@uref{https://sarabander.github.io/sicp/,
@@ -515,7 +518,7 @@ as ``SICP'', this book is a reference.
You can also install it and read it from your computer:
@example
guix install book-sicp info-reader
guix install sicp info-reader
info sicp
@end example
@@ -1734,8 +1737,8 @@ At this stage, the package @code{cargo-audit} is buildable.
@item
Finally we'll unbundle the vendored dependencies. The lockfile importer
inserts @code{TODO REVIEW:} comments for libraries with high probability
of bundled dependencies. @code{cargo-build-system} also performs
inserts @code{TODO:} comments for libraries with high probability of
bundled dependencies. @code{cargo-build-system} also performs
additional check for binary files in its
@code{check-for-pregenerated-files} phase, which usually indicates
bundling:
@@ -1909,11 +1912,11 @@ Don't forget to modify all workspace members in @code{(gnu packages
rust-crates)}:
@lisp
(define rust-pipewire-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
(define rust-pipewire-sys-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
(define rust-pipewire-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
(define rust-pipewire-sys-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
@dots{}
(define rust-libspa-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
(define rust-libspa-sys-0.8.0.fd3d8f7 package:rust-pipewire-0.8.0.fd3d8f7)
(define rust-libspa-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
(define rust-libspa-sys-0.8.0.fd3d8f7 rust-pipewire-0.8.0.fd3d8f7)
@end lisp
@node Using Rust Libraries in Other Build Systems
@@ -5734,9 +5737,9 @@ packages:
guix shell -C gcc-toolchain cmake coreutils grep sed make -- @dots{}
@end example
Or perhaps you'll find that you could just as well provide a package
definition for your code---@pxref{Defining Packages,,, guix, GNU Guix
Reference Manual}, to learn more on how to do that.
Or perhaps you'll find that you could just as well provide a definition
for your package---@pxref{Defining Packages,,, guix, GNU Guix Reference
Manual}, to learn more on how to do that.
Eventually, you'll have a list of packages that satisfies your needs.
+231 -887
View File
File diff suppressed because it is too large Load Diff
+2 -3
View File
@@ -13,9 +13,8 @@
(service home-bash-service-type
(home-bash-configuration
(guix-defaults? #t)
(variables
`(("HISTFILE" . "$XDG_CACHE_HOME/.bash_history")
("HISTSIZE" . "50000")))))
(bash-profile (list (plain-file "bash-profile" "\
export HISTFILE=$XDG_CACHE_HOME/.bash_history")))))
(simple-service 'test-config
home-xdg-configuration-files-service-type
+2 -4
View File
@@ -2,7 +2,7 @@
# Modified by Ludovic Courtès <ludo@gnu.org> for the GNU Guix manual.
# Further modified by Tomas Volf <~@wolfsden.cz>.
htmlxrefversion=2026-01-19.08; # UTC
htmlxrefversion=2025-08-31.16; # UTC
# Copyright 2010-2020, 2022 Free Software Foundation, Inc.
#
@@ -416,7 +416,7 @@ guile-rpc mono ${GS}/guile-rpc/manual/guile-rpc.html
guile-rpc node ${GS}/guile-rpc/manual/html_node/
GUIX_ROOT = https://guix.gnu.org
GUIX = ${GUIX_ROOT}/manual/1.5.0
GUIX = ${GUIX_ROOT}/manual
guix.de mono ${GUIX}/de/guix.de.html
guix.de node ${GUIX}/de/html_node/
guix.es mono ${GUIX}/es/guix.es.html
@@ -453,8 +453,6 @@ GUIX_COOKBOOK = ${GUIX_ROOT}/cookbook
guix-cookbook.sk node ${GUIX_COOKBOOK}/sk/html_node/
guix-cookbook.sv mono ${GUIX_COOKBOOK}/sv/guix-cookbook.sv.html
guix-cookbook.sv node ${GUIX_COOKBOOK}/sv/html_node/
guix-cookbook.ta mono ${GUIX_COOKBOOK}/ta/guix-cookbook.ta.html
guix-cookbook.ta node ${GUIX_COOKBOOK}/ta/html_node/
guix-cookbook mono ${GUIX_COOKBOOK}/en/guix-cookbook.html
guix-cookbook node ${GUIX_COOKBOOK}/en/html_node/
guix-cookbook.zh_CN mono ${GUIX_COOKBOOK}/zh-cn/guix-cookbook.zh_CN.html
+1 -2
View File
@@ -26,7 +26,7 @@
# If adding a language, update the following variables, and info_TEXINFOS.
MANUAL_LANGUAGES = de es fr it pt_BR ru zh_CN
COOKBOOK_LANGUAGES = de es fr it ko pt_BR ru sk sv ta zh_CN
COOKBOOK_LANGUAGES = de es fr it ko pt_BR ru sk sv zh_CN
# Arg1: A list of languages codes.
# Arg2: The file name stem.
@@ -52,7 +52,6 @@ info_TEXINFOS = %D%/guix.texi \
%D%/guix-cookbook.ru.texi \
%D%/guix-cookbook.sk.texi \
%D%/guix-cookbook.sv.texi \
%D%/guix-cookbook.ta.texi \
%D%/guix-cookbook.zh_CN.texi
%C%_guix_TEXINFOS = \
-12
View File
@@ -1,12 +0,0 @@
abi <abi/4.0>,
include <tunables/global>
include <tunables/guix>
# Theres no point in confining the guix executable, since it can run
# any user code and so everything is expected. We just need to
# explicitly enable userns for systems with the
# kernel.apparmor_restrict_unprivileged_userns sysctl.
profile guix @{guix_storedir}/{*-guix-command,*-guix-*/bin/guix} flags=(unconfined) {
userns,
}
-88
View File
@@ -1,88 +0,0 @@
abi <abi/4.0>,
include <tunables/global>
include <tunables/guix>
profile guix-daemon @{guix_storedir}/*-{guix-daemon,guix}-*/bin/guix-daemon flags=(enforce,attach_disconnected.path=/disconnected) {
include <abstractions/base>
userns,
signal,
capability sys_admin,
capability net_admin,
capability sys_chroot,
capability setgid,
capability chown,
network dgram,
umount,
mount,
pivot_root,
# Paths inside build chroot
/real-root/ w,
/ w,
@{guix_localstatedir}/guix/** rwk,
/var/log/guix/** w,
owner @{PROC}/@{pid}/{fd/,environ} r,
owner @{PROC}/@{pid}/oom_score_adj w,
owner @{PROC}/@{pid}/uid_map rw,
owner @{PROC}/@{pid}/gid_map rw,
owner @{PROC}/@{pid}/setgroups w,
@{guix_storedir}/ r,
@{guix_storedir}/** rwlmk,
@{guix_storedir}/*/bin/guile cx -> guix-builder,
@{guix_storedir}/*-guix-command cx -> guix-helper,
@{guix_storedir}/*-guix-*/bin/guix cx -> guix-helper,
@{etc_rw}/nsswitch.conf r,
@{etc_rw}/passwd r,
@{etc_rw}/group r,
owner /tmp/** rwl,
owner /var/tmp/** rwl,
/usr/bin/newgidmap Ux,
# Site-specific additions and overrides. See local/README for details.
include if exists <local/guix-daemon>
profile guix-builder flags=(enforce,attach_disconnected.path=/disconnected) {
include <abstractions/base>
signal (receive),
@{guix_storedir}/** rwlmkux,
owner /tmp/** rw,
@{PROC}/@{pid}/fd/ r,
/disconnected/** rw,
}
# This is for any time guix is called by the daemon as a helper:
# - guix download
# - guix discover
# - guix gc --list-busy
# - probably more?
profile guix-helper flags=(enforce,attach_disconnected.path=/disconnected) {
include <abstractions/base>
include <abstractions/nameservice>
signal (receive),
ptrace (read) peer=guix-daemon,
/disconnected/run/dbus/system_bus_socket rw,
dbus (send, receive),
@{guix_localstatedir}/guix/discover/ rw,
@{guix_localstatedir}/guix/discover/* rw,
@{guix_localstatedir}/guix/substitute/ rw,
@{guix_localstatedir}/guix/substitute/** rwk,
@{guix_sysconfdir}/guix/** r,
@{guix_storedir}/** rwlmix,
@{PROC}/ r,
owner @{PROC}/@{pid}/{fd/,environ} r,
}
}
-5
View File
@@ -1,5 +0,0 @@
@{guix_storedir} = @storedir@
@{guix_sysconfdir} = @guix_sysconfdir@
@{guix_localstatedir} = @guix_localstatedir@
include if exists <tunables/guix.d>
+21 -27
View File
@@ -283,43 +283,37 @@ corresponding to the top-level definition containing the staged changes."
(define variable-name
(second old))
(define version
(match ((xpath:node-or
(and=> ((xpath:node-or
(xpath:sxpath '(*any* *any* package version *any*))
;; For let binding
(xpath:sxpath '(*any* *any* (*any*) package version *any*)))
(cons '*TOP* new))
(() #f)
((version . rest) version)))
(if version
(format port
"gnu: ~a: Update to ~a.~%~%* ~a (~a): Update to ~a.~%"
variable-name version file-name variable-name version)
(format port
"gnu: ~a: Update.~%~%* ~a (~a): Update.~%"
variable-name file-name variable-name))
first))
(format port
"gnu: ~a: Update to ~a.~%~%* ~a (~a): Update to ~a.~%"
variable-name version file-name variable-name version)
(for-each (lambda (field)
(let ((old-values (get-values old field))
(new-values (get-values new field)))
(or (equal? old-values new-values)
(let ((removed (lset-difference equal? old-values new-values))
(added (lset-difference equal? new-values old-values)))
(unless (and (null? added) (null? removed))
(format port
"[~a]: ~a~%" field
(break-string
;; A dependency can be a list of (pkg output).
(match (list (map object->string removed)
(map object->string added))
((() added)
(format #f "Add ~a."
(listify added)))
((removed ())
(format #f "Remove ~a."
(listify removed)))
((removed added)
(format #f "Remove ~a; add ~a."
(listify removed)
(listify added)))))))))))
(format port
"[~a]: ~a~%" field
(break-string
;; A dependency can be a list of (pkg output).
(match (list (map object->string removed)
(map object->string added))
((() added)
(format #f "Add ~a."
(listify added)))
((removed ())
(format #f "Remove ~a."
(listify removed)))
((removed added)
(format #f "Remove ~a; add ~a."
(listify removed)
(listify added))))))))))
'(inputs propagated-inputs native-inputs)))
(define* (add-commit-message file-name variable-name
+1 -37
View File
@@ -175,10 +175,6 @@
(file (execute
execute_no_trans read write open entrypoint map
getattr link unlink)))
;; Needed to execute the 'newgidmap' helper.
(allow guix_daemon_t
bin_t
(file (execute execute_no_trans map)))
;; Remounting /gnu/store read-write.
(allow guix_daemon_t
@@ -189,9 +185,6 @@
(allow guix_daemon_t
root_t
(dir (mounton)))
(allow init_t
guix_daemon.guix_store_content_t
(dir (mounton)))
(allow guix_daemon_t
fs_t
(filesystem (getattr)))
@@ -326,7 +319,7 @@
map
getattr setattr
unlink
open read write append)))
open read write)))
(allow guix_daemon_t
guix_daemon_conf_t
(lnk_file (create getattr rename unlink read)))
@@ -368,14 +361,6 @@
self
(netlink_route_socket (bind create getattr nlmsg_read read write getopt)))
;; Allow use of user namespaces
(allow guix_daemon_t
self
(cap_userns (setgid sys_admin net_admin sys_chroot)))
(allow guix_daemon_t
self
(user_namespace (create)))
;; Socket operations
(allow guix_daemon_t
guix_daemon_socket_t
@@ -455,27 +440,6 @@
vnc_port_t
(tcp_socket (name_bind)))
;; 'guix gc' needs to go through /proc entries for all processes that are
;; running. Strictly speaking, it means guix-daemon needs access to all
;; process types in the SELinux policy. In practice, only processes from
;; programs in the /gnu/store are relevant for finding roots for garbage
;; collection. Since Guix currently doesn't install any SELinux policy for
;; its packages, we can assume that all the processes it needs to access run
;; as unconfined_t.
;;
;; FIXME: This doesn't stop 'guix gc' from generating a lot of unnecessary
;; AVC denied audit messages. Perhaps guix-daemon could test whether it has
;; access to the proc entry before trying to access it?
(allow guix_daemon_t
unconfined_t
(dir (search)))
(allow guix_daemon_t
unconfined_t
(file (read)))
(allow guix_daemon_t
unconfined_t
(lnk_file (read)))
;; I guess sometimes it needs random numbers
(allow guix_daemon_t
random_device_t
-6
View File
@@ -14,12 +14,6 @@ ExecStart=@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daem
--substitute-urls='@GUIX_SUBSTITUTE_URLS@'
Environment='GUIX_STATE_DIRECTORY=@localstatedir@/guix' 'GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8
# Stop the gnu-store.mount so that the daemon can capture the store as
# read-write in its private mount namespace.
# See <https://codeberg.org/guix/guix/issues/4744>.
ExecStartPre=-+systemctl stop gnu-store.mount
ExecStartPost=-+systemctl start gnu-store.mount --no-block
# Run under a dedicated unprivileged user account.
User=guix-daemon
+18 -102
View File
@@ -17,7 +17,6 @@
# Copyright © 2024 Tomas Volf <~@wolfsden.cz>
# Copyright © 2024 Richard Sent <richard@freakingpenguin.com>
# Copyright © 2025 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
# Copyright © 2025 Noé Lopez <noelopez@free.fr>
#
# This file is part of GNU Guix.
#
@@ -106,12 +105,10 @@ DEBUG=0
GNU_URL="https://ftpmirror.gnu.org/gnu/guix/"
# The following associative array holds set of GPG keys used to sign the
# releases, keyed by their corresponding Codeberg user name.
# releases, keyed by their corresponding Savannah user ID.
declare -A GPG_SIGNING_KEYS
GPG_SIGNING_KEYS["civodul"]=3CE464558A84FDC69DB40CFB090B11993D9AEBB5 # ludo
GPG_SIGNING_KEYS["apteryx"]=27D586A4F8900854329FF09F1260E46482E63562 # maxim
GPG_SIGNING_KEYS["efraim"]=A28BF40C3E551372662D14F741AAE7DCCA3D8351 # efraim
PUBLIC_KEYSERVERS="keys.openpgp.org pgpkeys.eu keyserver.ubuntu.com"
GPG_SIGNING_KEYS[15145]=3CE464558A84FDC69DB40CFB090B11993D9AEBB5 # ludo
GPG_SIGNING_KEYS[127547]=27D586A4F8900854329FF09F1260E46482E63562 # maxim
# ------------------------------------------------------------------------------
#+UTILITIES
@@ -206,7 +203,6 @@ chk_gpg_keyring()
for user_id in "${!GPG_SIGNING_KEYS[@]}"; do
gpg_key_id=${GPG_SIGNING_KEYS[$user_id]}
codeberg_username=$user_id
# Without --dry-run this command will create a ~/.gnupg owned by root on
# systems where gpg has never been used, causing errors and confusion.
if gpg --dry-run --list-keys "$gpg_key_id" >/dev/null 2>&1; then
@@ -215,39 +211,20 @@ chk_gpg_keyring()
if prompt_yes_no "${INF}The following OpenPGP public key is \
required to verify the Guix binary signature: $gpg_key_id.
Would you like me to fetch it for you?"; then
if wget "https://codeberg.org/$codeberg_username.gpg" \
--tries=1 --timeout=30 --no-verbose -O- | gpg --import -; then
continue
fi
key_obtained=false
# Try to fetch keys from an available keyserver
for key_server in $PUBLIC_KEYSERVERS; do
if gpg --keyserver $key_server --recv-key $gpg_key_id; then
key_obtained=true
break
fi
done
if $key_obtained; then
# Use a reasonable time-out here so users don't report silent
# freezes when Savannah goes out to lunch, as has happened.
if wget "https://sv.gnu.org/people/viewgpg.php?user_id=$user_id" \
--timeout=30 --no-verbose -O- | gpg --import -; then
continue
fi
fi
# If we reach this point, the key is (still) missing. Report further
# missing keys, if any, but then abort the installation.
_err "Missing OpenPGP public key ($gpg_key_id).
Fetch it with codeberg username:
Fetch it with this command:
wget \"https://codeberg.org/$codeberg_username.gpg\" -O - | \
sudo -i gpg --import -
If this fails, try to fetch it via a keyserver:
for key_server in $PUBLIC_KEYSERVERS; do
if sudo -i gpg --keyserver $key_server --recv-key $gpg_key_id; then
break
fi
done"
wget \"https://sv.gnu.org/people/viewgpg.php?user_id=$user_id\" -O - | \
sudo -i gpg --import -"
exit_flag=yes
done
if [ "$exit_flag" = yes ]; then
@@ -778,7 +755,7 @@ sys_create_init_profile()
cat <<"EOF" > /etc/profile.d/zzz-guix.sh
# Explicitly initialize XDG base directory variables to ease compatibility
# with Guix System: see <https://issues.guix.gnu.org/56050#3>.
export XCURSOR_PATH="${XCURSOR_PATH:-$HOME/.local/share/icons:$HOME/.icons:/usr/local/share/icons:/usr/share/icons}"
export XCURSOR_PATH="${XCURSOR_PATH:-/usr/local/share/icons:/usr/share/icons}"
export XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
export XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
@@ -794,8 +771,12 @@ export PATH="$GUIX_PROFILE/bin${PATH:+:}$PATH"
# info and man readers. When INFOPATH is unset, add a trailing colon so Emacs
# searches 'Info-default-directory-list'. When MANPATH is unset, add a
# trailing colon so the system default search path is used.
export INFOPATH="$GUIX_PROFILE/share/info:${INFOPATH:-}"
export MANPATH="$GUIX_PROFILE/share/man:${MANPATH:-}"
export INFOPATH="$GUIX_PROFILE/share/info:$INFOPATH"
export MANPATH="$GUIX_PROFILE/share/man:$MANPATH"
# Expose the latest Guix modules to Guile so guix shell and repls spawned by
# e.g. Geiser work out of the box.
export GUILE_LOAD_PATH="$GUIX_PROFILE/share/guile/site/3.0${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
export GUILE_LOAD_COMPILED_PATH="$GUIX_PROFILE/lib/guile/3.0/site-ccache${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
# User's default profile, if it exists
GUIX_PROFILE="$HOME/.guix-profile"
@@ -817,11 +798,6 @@ if [ -L "$GUIX_PROFILE" ]; then
*$GUIX_PROFILE/share/man*) ;;
*) export MANPATH="$GUIX_PROFILE/share/man:$MANPATH"
esac
case $XDG_DATA_DIRS in
*$GUIX_PROFILE/share*) ;;
*) export XDG_DATA_DIRS="$GUIX_PROFILE/share:$XDG_DATA_DIRS"
esac
fi
# NOTE: Guix Home handles its own profile initialization in ~/.profile. See
@@ -916,64 +892,6 @@ sys_maybe_setup_selinux()
restorecon -R /gnu /var/guix
}
sys_maybe_setup_apparmor()
{
if ! [ -f /sys/module/apparmor/parameters/enabled ]
then
return
fi
if ! command -v apparmor_parser &> /dev/null
then
return
fi
prompt_yes_no "Install AppArmor profile that might be required to run guix-daemon?" \
|| return 0
local var_guix=/var/guix/profiles/per-user/root/current-guix
local apparmor_sources="${var_guix}/etc/apparmor.d/"
if ! [ -d "$apparmor_sources" ]
then
_err "This version of Guix doesnt contain AppArmor profiles."
return
fi
cp -f -t /etc/apparmor.d/tunables "$apparmor_sources/tunables/guix"
cp -f -t /etc/apparmor.d "$apparmor_sources/guix-daemon"
cp -f -t /etc/apparmor.d "$apparmor_sources/guix"
apparmor_parser --warn=all -r /etc/apparmor.d/guix-daemon
apparmor_parser --warn=all -r /etc/apparmor.d/guix
_msg_pass "apparmor profiles installed and loaded"
}
sys_delete_apparmor_profiles()
{
# Not a big deal if the apparmor_parser commands fail as they only apply
# for the current boot, we still want to go on and remove the files.
if [ -f "/etc/apparmor.d/guix" ]
then
_msg_info "removing /etc/apparmor.d/guix"
apparmor_parser -R /etc/apparmor.d/guix || true
rm -f "/etc/apparmor.d/guix"
fi
if [ -f "/etc/apparmor.d/guix-daemon" ]
then
_msg_info "removing /etc/apparmor.d/guix-daemon"
apparmor_parser -R /etc/apparmor.d/guix-daemon || true
rm -f "/etc/apparmor.d/guix-daemon"
fi
if [ -f "/etc/apparmor.d/tunables/guix" ]
then
_msg_info "removing /etc/apparmor.d/tunables/guix"
rm -f "/etc/apparmor.d/tunables/guix"
fi
}
sys_delete_init_profile()
{
_msg_info "removing /etc/profile.d/zzz-guix.sh"
@@ -1051,6 +969,7 @@ main_install()
chk_init_sys
add_init_sys_require
chk_require "${REQUIRE[@]}"
chk_gpg_keyring
chk_sys_arch
chk_sys_nscd
chk_existing
@@ -1061,7 +980,6 @@ main_install()
tmp_path="$(mktemp -t -d guix.XXXXXX)"
if [ -z "${GUIX_BINARY_FILE_NAME}" ]; then
chk_gpg_keyring
guix_get_bin_list "${GNU_URL}"
guix_get_bin "${GNU_URL}" "${BIN_VER}" "$tmp_path"
GUIX_BINARY_FILE_NAME=${BIN_VER}.tar.xz
@@ -1076,7 +994,6 @@ main_install()
sys_create_store "${GUIX_BINARY_FILE_NAME}" "${tmp_path}"
sys_create_build_user
sys_maybe_setup_selinux
sys_maybe_setup_apparmor
sys_enable_guix_daemon
sys_authorize_build_farms
sys_create_init_profile
@@ -1110,7 +1027,6 @@ main_uninstall()
sys_delete_guix_daemon
# stop people from accessing their profiles.
sys_delete_user_profiles
sys_delete_apparmor_profiles
# kill guix off all the guts of guix
sys_delete_store
# clean up the system
+5 -9
View File
@@ -71,21 +71,18 @@ TARGET."
"connman" "network-manager" "wpa-supplicant" "isc-dhcp" "cups"
"linux-libre" "grub-hybrid")))
(define (%system-gui-packages target)
(define %system-gui-packages
;; Key packages proposed by the Guix System installer.
(append (map specification->package
'(;; build system `python' does not support cross builds
;"gnome" "xfce" "mate" "openbox"
;"gnome" "xfce" "mate" "openbox"
"awesome"
"i3-wm" "i3status" "dmenu" "st"
"ratpoison" "xterm"
;; build system `emacs' does not support cross builds
;"emacs-exwm" "emacs-desktop-environment"
;"emacs-exwm" "emacs-desktop-environment"
"emacs"))
;; NOTE: %default-xorg-modules depends on system.
(parameterize
((%current-target-system target))
%default-xorg-modules)))
%default-xorg-modules))
(define %packages-to-cross-build
;; Packages that must be cross-buildable from x86_64-linux.
@@ -154,8 +151,7 @@ TARGET."
;; With a graphical environment:
(if (or (target-x86-32? target)
(target-aarch64? target))
;; %system-gui-packages depends on the system.
(%system-gui-packages target)
%system-gui-packages
'()))))
(fold delete (map platform-system->target (systems))
'(;; Disable cross-compilation to self:
-167
View File
@@ -1,167 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest containing packages which are needed by the
;;; installer.
(use-modules (guix packages)
(gnu packages)
((gnu services xorg) #:select (%default-xorg-modules))
(guix profiles)
(guix utils)
(srfi srfi-1))
(define %desktop-packages
(append
%default-xorg-modules
(map specification->package
(list
;; etc-service
"net-base"
"tzdata"
;; boot-file-system-utilities-service
"e2fsprogs"
;; plasma-deskto-sservice-type
"plasma"
;; gnome-desktop-service
"gnome"
;; xfce-desktop-service
"xfce"
;; mate-desktop-service
"mate"
;; set-xorg-configuration-service
"font-alias"
"font-misc-misc"
"font-adobe75dpi"
"xorg-server"
;; screen-locker-service
"slock"
"xlockmore"
;; mtp-service
"libmtp"
;; sane-service
"sane"
"sane-backends"
;; mount-setuid-helpers-service
"nfs-utils"
"ntfs-3g"
;; guix-artwork-service
"guix-backgrounds"
"guix-icons"
;; vte-integration-service
"vte"
;; network-manager-applet-service
"network-manager-applet"
;; modem-manager-service
"modem-manager"
;; usb-modeswitch-service
"usb-modeswitch"
"usb-modeswitch-data"
;; avahi-service
"avahi"
;; udisks-service
"udisks"
;; cups-pk-helper-service
"cups-pk-helper"
;; colord-service
"colord"
;; geoclue-service
"geoclue"
;; polkit-service
"polkit"
;; elogind-service
"elogind"
;; dbus-service
;; ntp-service
"ntp"
;; alsa-service
"alsa-plugins"
;; mingetty-service
"mingetty"
;; etc-bashrc-d-service
"bash-completion"
;; udev-service
"eudev"
"lvm2"
"alsa-utils"
"crda"
;; sysctl-service
"procps"
;; special-files-service
"coreutils"
"grub-pc"
"less"
"mg"
"nano"
"nvi"
"man-db"
"info-reader"
"kbd"
"guile-readline"
"guile-colorized"
"pciutils"
"usbutils"
"util-linux-with-udev"
"kmod"
"isc-dhcp"
"iproute2"
"wget"
"nss-certs"
"iw"
"wireless-tools"
"psmisc"
"which"
"guile"
"findutils"
"grep"
"sed"
"diffutils"
"patch"
"gawk"
"tar"
"gzip"
"bzip2"
"lzip"
"xz"
"zstd"
;; packages
"sway"
"foot"
"wmenu"
"icewm"
"openbox"
"awesome"
"i3-wm"
"i3status"
"dmenu"
"st"
"ratpoison"
"xterm"
"emacs"
"emacs-exwm"
"emacs-desktop-environment"))))
(define %desktop-manifest
(manifest
;; Some of %SYSTEM-PACKAGES are currently unsupported on some
;; systems--e.g., GNOME on 32-bit, due to Rust. Filter them out.
(filter-map (lambda (package)
(and (supported-package? package (%current-system))
(package->manifest-entry package)))
(append %desktop-packages))))
%desktop-manifest
-165
View File
@@ -1,165 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Noé Lopez <noelopez@free.fr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This manifest is a list of packages that user care about (collected via an
;;; online form). It corresponds to the “Important packages” of GCD 005.
(specifications->manifest
(list
"0ad"
"agda"
"alacritty"
"ardour"
"autoconf"
"automake"
"blender"
"borg"
"btrfs-progs"
"certbot"
"chez-scheme"
"clang-toolchain"
"cryptsetup"
"dillo"
"direnv"
"docker-cli"
"dovecot"
"emacs"
"emacs-exwm"
"emacs-pgtk"
"evince"
"fcitx5"
"file"
"fish"
"foot"
"fzf"
"gajim"
"gallery-dl"
"gcc-toolchain"
"getmail6"
"gettext"
"ghc-xmonad-contrib"
"gimp"
"git"
"gmp"
"gnome"
"gnupg"
"godot"
"gpaste"
"guile"
"guile-json"
"hatch"
"help2man"
"helvum"
"hexchat"
"hyprland"
"icecat"
"idris"
"imagemagick"
"imapfilter"
"jami"
"k3b"
"kakoune"
"keepassxc"
"krita"
"ksoloti-patcher"
"libreoffice"
"librewolf"
"libsecret"
"libtool"
"libvirt"
"llama-cpp"
"mariadb"
"luanti"
"mpc"
"mpfr"
"mplayer"
"mpv"
"mullvadbrowser"
"neovim"
"nginx"
"niri"
"nix"
"node"
"notmuch"
"obs"
"offlineimap3"
"opencv"
"openmpi"
"opensmtpd"
"openssh"
"openttd"
"pandoc"
"password-store"
"pavucontrol"
"php"
"picard"
"pipewire"
"pkg-config"
"plasma"
"plasma-desktop"
"po4a"
"podman"
"postgresql"
"python"
"python-lxml"
"python-pycryptodome"
"qemu"
"ranger"
"retroarch"
;;"rocm"
"rofi"
"rspamd"
"rsync"
"screen"
"slurm"
"sqlite"
"sqlitebrowser"
"strace"
"strawberry"
"syncthing"
"taisei"
"telegram-desktop"
"texlive-babel"
"texlive-babel-english"
"texlive-babel-french"
"texlive-babel-german"
"texlive-collection-latex"
"texlive-collection-latexrecommended"
"texlive-collection-xetex"
"texlive-pdfjam"
"tmux"
"tuba"
"ungoogled-chromium"
"unison"
"unzip"
"uv"
"viewnior"
"virt-manager"
"waybar"
"wine"
"wine64"
"wireguard-tools"
"xmobar"
"xmonad"
"xournal"
"xournalpp"
"xpdf"
"yt-dlp"
"zig"
"zip"
"zsh"))
@@ -23,9 +23,7 @@
;;; installer.
(use-modules (guix packages)
(gnu packages)
((gnu system) #:select (%base-packages %base-firmware))
(guix profiles)
((gnu services xorg) #:select (%default-xorg-modules))
(guix utils)
(srfi srfi-1))
@@ -46,14 +44,16 @@ TARGET."
(define %system-packages
;; Key packages proposed by the Guix System installer.
(append (map specification->package
'("guix" "shepherd" "guile-static-initrd"
"openssh" "tor" "ntp" "gpm" "mingetty"
'("guix" "shepherd"
"gnome" "xfce" "mate"
"icewm" "openbox" "awesome"
"i3-wm" "i3status" "dmenu" "st"
"ratpoison" "xterm"
"emacs" "emacs-exwm" "emacs-desktop-environment"
"openssh" "tor" "ntp" "gpm"
"connman" "network-manager" "wpa-supplicant" "isc-dhcp" "cups"
"linux-libre" "grub-hybrid"
;; privileged programs
"shadow" "sudo" "fuse" "inetutils" "util-linux"))
%base-firmware
%base-packages))
"linux-libre" "grub-hybrid"))
%default-xorg-modules))
(define %bootloader-packages
;; The bootloaders offered by the Guix System installer.
-83
View File
@@ -42,89 +42,6 @@
(channel-news
(version 0)
(entry (commit "6d4cb99a15da7f4fd55f956c55f4f4aacfcc7742")
(title
(en "@code{%desktop-services} now includes GDM on AArch64"))
(body
(en "On Guix System in an operating system configuration, your value for the
@code{services} field is based on @code{%desktop-services} for desktop
machines.
The @code{%desktop-services} contains a login manager that is
architecture-dependent. Previously, GDM has been used on x86_64 and SDDM on
other architectures.
Now, GDM is used on all 64-bit architectures. This affects only AArch64 in
the end, as other 64-bit architectures aren't mature enough to use
%desktop-services, yet.
In case you're on AArch64 and you've changed the login manager, you will have
to adapt your config to remove @code{gdm-service-type} instead of
@code{sddm-service-type}.")))
(entry (commit "d3b79beaa806452dceaffb8b211b69dc4c346aba")
(title
(en "Linux-libre 5.4 no longer supported")
(de "Linux-libre 5.4 nicht mehr unterstützt")
(pt "Linux-libre 5.4 não é mais suportado"))
(body
(en "The linux-libre 5.4 kernel series is no longer supported
upstream and will be removed from GNU Guix soon:
https://www.kernel.org/category/releases.html
This kernel series was first added to Guix in 2019 by Mark Weaver, at version
5.4.5. After ~297 updates delivered to Guix users, we have deployed the final
update, 5.4.302.
The next kernel series removals are scheduled for December 2026, when the Linux
long-term support team is planning to stop supporting four different kernel
series: 6.12, 6.6, 5.15, and 5.10.")
(de "Die Versionsreihe 5.4 des Linux-libre-Kernels wird von dessen
Anbieter nicht mehr unterstützt und wird bald aus GNU Guix entfernt werden:
https://www.kernel.org/category/releases.html
Diese Kernel-Reihe wurde ursprünglich 2019 zu Guix hinzugefügt von Mark Weaver
mit Version 5.4.5. Nach ~297 Aktualisierungen, die Guix seinen Nutzern
bereitgestellt hat, haben wir nun die letzte Aktualisierung
ausgeliefert, 5.4.302.
Der weitere Plan von Linux Team für Langzeitunterstützung sieht vor, als
Nächstes die Unterstützung für vier verschiedene Kernel-Reihen im Dezember 2026
zu beenden: 6.12, 6.6, 5.15 und 5.10.")
(pt "A série 5.4 do kernel linux-libre não é mais suportada pelo
fornecedor e será removida do GNU Guix em breve:
https://www.kernel.org/category/releases.html
Esta série de kernels foi adicionada inicialmente ao Guix em 2019 por Mark
Weaver, na versão 5.4.5. Após ~297 atualizações entregues aos usuários do
Guix, implantamos a atualização final, 5.4.302.
As próximas remoções de séries do kernel estão agendadas para dezembro de
2026, quando o time de suporte de longo prazo planeja interromper o suporte a
quatro séries diferentes do kernel: 6.12, 6.6, 5.15 e 5.10.")))
(entry (commit "14bb0192fde79909999c3880b6b66aa22499eb11")
(title
(en "Linux-libre 6.16 removed from Guix")
(de "Linux-libre 6.16 wurde aus Guix entfernt")
(pt "Linux-libre 6.16 removido do Guix")
(zh "Linux-libre 6.16 已从 Guix 中移除"))
(body
(en "The linux-libre 6.16 kernel series has been removed from Guix, as
it is no longer supported upstream. The 6.17 kernel series is now the
default.")
(de "Die Versionsreihe 6.16 des Linux-libre-Kernels wurde aus GNU Guix
entfernt, weil sie von dessen Anbieter nicht mehr unterstützt wird.
Kernel-Versionsreihe 6.17 ist jetzt vorgegeben.")
(pt "A série 6.16 do kernel linux-libre foi removida do Guix, dado
que não é mais suportada pelo fornecedor. A série 6.17 é o padrão atual")
(zh "由于上游不再支持GNU Guix 已移除 6.16 系列的 linux-libre 内核6.17
内核系列现已成为默认版本")))
(entry (commit "8daae75de3670594dfcb63b6ae6f1603ca6f7971")
(title
(en "Fundraising to sustain and strengthen Guix")
+24 -101
View File
@@ -15,7 +15,6 @@ exec $pre_inst_env_maybe guix repl -- "$0" "$@"
;;; Copyright © 2025 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -327,12 +326,6 @@ PARAMETERS."
"members" user)
=> 204)
(define-forgejo-request (remove-team-member team user)
"Remove USER (a string) from TEAM, a Forgejo team."
(DELETE "teams" (number->string (forgejo-team-id team))
"members" user)
=> 204)
(define-forgejo-request (repository-teams owner repository)
"Return the list of teams assigned to REPOSITORY of OWNER."
(GET "repos" owner repository "teams"
@@ -379,8 +372,7 @@ PARAMETERS."
to-add)
(for-each (lambda (user)
(format log-port "removing '~a' from team '~a'~%"
user (forgejo-team-name forgejo-team))
(remove-team-member token forgejo-team user))
user (forgejo-team-name forgejo-team)))
to-remove)))
(define* (synchronize-team token team
@@ -465,26 +457,6 @@ already exists. Lookup team IDs among CURRENT-TEAMS."
"gnu/packages/fluidplug.scm"
"gnu/packages/xiph.scm")))
(define-team beam
(team 'beam
#:name "Erlang/Elixir/BEAM team"
#:description "The virtual machine at the core of the Erlang Open
Telecom Platform (OTP), Erlang and Elxir languages and packages, development
of Rebar and Mix build systems and Hex.pm importer."
#:scope (list (make-regexp* "^gnu/packages/elixir(-.+|)\\.scm$")
"guix/build/mix-build-system.scm"
"guix/build-system/mix.scm"
(make-regexp* "^gnu/packages/erlang(-.+|)\\.scm$")
"guix/build/rebar-build-system.scm"
"guix/build-system/rebar.scm"
"guix/import/hexpm.scm"
"guix/scripts/import/hexpm.scm")))
(define-team bioinformatics
(team 'bioinformatics
#:name "Bioinformatics team"
#:scope (list "gnu/packages/bioinformatics.scm")))
(define-team bootstrap
(team 'bootstrap
#:name "Bootstrap"
@@ -698,15 +670,6 @@ GLib/GIO, GTK, GStreamer and Webkit."
"guix/scripts/import/go.scm"
"tests/import/go.scm")))
(define-team hare
(team 'hare
#:name "Hare"
#:scope (list "gnu/packages/hare.scm"
"gnu/packages/hare-apps.scm"
"gnu/packages/hare-xyz.scm"
"guix/build-system/hare.scm"
"guix/build/hare-build-system.scm")))
(define-team haskell
(team 'haskell
#:name "Haskell team"
@@ -735,10 +698,9 @@ the haskell-build-system."
(define-team hpc
(team 'hpc
#:name "High-performance computing team"
#:description "High-performance computing (HPC) related packages."
#:name "Hpc team"
#:description "High performance computing related packages."
#:scope (list "gnu/packages/mpi.scm"
"gnu/packages/oneapi.scm"
"gnu/packages/rocm.scm"
"gnu/packages/sycl.scm"
"gnu/packages/tbb.scm"
@@ -939,8 +901,7 @@ importer."
"The current release team. Members are expected to change with each
release."
#:scope (list "NEWS"
"etc/manifests/release-minimal.scm"
"etc/manifests/release-desktop.scm")))
"etc/manifests/release.scm")))
(define-team reproduciblebuilds
(team 'reproduciblebuilds
@@ -972,20 +933,6 @@ release."
"guix/scripts/import/crate.scm"
"tests/import/crate.scm")))
(define-team crypto
(team 'crypto
#:name "Crypto team"
#:description
"Secrets, passwords, cryptography and security related packages."
#:scope (list
"gnu/packages/crypto.scm"
"gnu/packages/gnupg.scm"
"gnu/packages/nettle.scm"
"gnu/packages/password-utils.scm"
"gnu/packages/security-token.scm"
"gnu/packages/ssh.scm"
"gnu/packages/tls.scm")))
(define-team science
(team 'science
#:name "Science team"
@@ -1035,7 +982,6 @@ packages (e.g. Astronomy, Chemistry, Math, Physics etc.)"
"gnu/packages/openstack.scm"
"gnu/packages/prometheus.scm"
"gnu/packages/rdesktop.scm"
"gnu/packages/samba.scm"
"gnu/packages/selinux.scm"
"gnu/packages/storage.scm"
"gnu/packages/task-runners.scm"
@@ -1098,6 +1044,11 @@ the \"texlive\" importer."
"bavier")
science)
(define-member (person "Lars-Dominik Braun"
"lars@6xq.net"
"ldb")
python haskell)
(define-member (person "Jonathan Brielmaier"
"jonathan.brielmaier@web.de"
"jonsger")
@@ -1112,7 +1063,7 @@ the \"texlive\" importer."
(define-member (person "Andreas Enge"
"andreas@enge.fr"
"enge")
bootstrap core-packages crypto lxqt science tex)
bootstrap core-packages lxqt science tex)
(define-member (person "Tanguy Le Carrour"
"tanguy@bioneland.org"
@@ -1142,7 +1093,7 @@ the \"texlive\" importer."
(define-member (person "jgart"
"jgart@dismail.de"
"jgart")
hare lisp mentors)
lisp mentors)
(define-member (person "Guillaume Le Vaillant"
"glv@posteo.net"
@@ -1177,7 +1128,7 @@ the \"texlive\" importer."
(define-member (person "Ricardo Wurmus"
"rekado@elephly.net"
"rekado")
bioinformatics r sugar)
r sugar)
(define-member (person "Christopher Baines"
"guix@cbaines.net"
@@ -1195,8 +1146,7 @@ the \"texlive\" importer."
ocaml)
(define-member (person "Josselin Poiret"
"dev@jpoiret.xyz"
"jpoiret")
"dev@jpoiret.xyz")
installer)
(define-member (person "("
@@ -1204,8 +1154,7 @@ the \"texlive\" importer."
)
(define-member (person "Simon Tournier"
"zimon.toutoune@gmail.com"
"zimoun")
"zimon.toutoune@gmail.com")
julia core mentors r)
(define-member (person "宋文武"
@@ -1229,8 +1178,7 @@ the \"texlive\" importer."
core documentation electronics gnome qt telephony)
(define-member (person "Katherine Cox-Buday"
"cox.katherine.e+guix@gmail.com"
"katco")
"cox.katherine.e+guix@gmail.com")
emacs go lisp)
(define-member (person "Munyoki Kilyungi"
@@ -1277,9 +1225,8 @@ the \"texlive\" importer."
games)
(define-member (person "Laurent Gatto"
"lgatto@protonmail.ch"
"lgatto")
r bioinformatics)
"laurent.gatto@gmail.com")
r)
(define-member (person "Nicolas Goaziou"
"guix@nicolasgoaziou.fr"
@@ -1319,7 +1266,7 @@ the \"texlive\" importer."
(define-member (person "Cayetano Santos"
"csantosb@inventati.org"
"csantosb")
ai emacs electronics hpc crypto)
ai emacs electronics hpc)
(define-member (person "Greg Hogan"
"code@greghogan.com"
@@ -1328,7 +1275,8 @@ the \"texlive\" importer."
(define-member (person "Hilton Chain"
"hako@ultrarare.space"
"hako"))
"hako")
emacs home localization mozilla rust zig)
(define-member (person "Noé Lopez"
"noelopez@free.fr"
@@ -1357,7 +1305,7 @@ the \"texlive\" importer."
(define-member (person "Nicolas Graves"
"ngraves@ngraves.fr"
"nicolas-graves")
core javascript python ruby)
javascript python ruby)
(define-member (person "Yelninei"
"yelninei@tutamail.com"
@@ -1365,9 +1313,9 @@ the \"texlive\" importer."
hurd)
(define-member (person "Giacomo Leidi"
"therewasa@fishinthecalculator.me"
"goodoldpaul@autistici.org"
"fishinthecalculator")
audio beam)
audio)
(define-member (person "Saku Laesvuori"
"saku@laesvuori.fi"
@@ -1392,32 +1340,7 @@ the \"texlive\" importer."
(define-member (person "Danny Milosavljevic"
"dannym@friendly-machines.com"
"daym")
bootstrap hpc python rust science)
(define-member (person "Andy Tai"
"atai@atai.org"
"atai")
ai)
(define-member (person "Pierre-Henry Fröhring"
"contact@phfrohring.com"
"phfrohring")
beam)
(define-member (person "Igorj Gorjaĉev"
"igor@goryachev.org"
"delitrem")
beam)
(define-member (person "Nguyễn Gia Phong"
"cnx@loang.net"
"cnx")
python)
(define-member (person "Lilah Tascheter"
"lilah@lunabee.space"
"tinystar")
hare)
bootstrap hpc rust science)
(define (find-team name)
-60
View File
@@ -1,60 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest of packages built using the mix-build-system.
;;; It is used to assist continuous integration of the beam-team branch.
;;;
;;;
;;; You can use it to build all covered packages with:
;;;
;;; ./pre-inst-env guix build -m etc/teams/beam/elixir-manifest.scm
;;;
;;; or to update them with:
;;;
;;; ./pre-inst-env guix refresh -u -m etc/teams/beam/elixir-manifest.scm
(use-modules (guix packages)
(guix profiles)
(guix gexp)
(guix build-system)
(ice-9 match)
(srfi srfi-1)
(srfi srfi-26))
(define* (has-mix-build-system? build-system #:key modules #:allow-other-keys)
(or (eq? (build-system-name build-system) 'mix)
(any
(match-lambda
(('guix 'build 'mix-build-system) #t)
('((guix build mix-build-system) . _) #t)
(_ #f))
(cond
((gexp? modules) (gexp->approximate-sexp modules))
((pair? modules) modules)
(else '())))))
(manifest
(map package->manifest-entry
(fold-packages
(lambda (package lst)
(if (apply has-mix-build-system?
(package-build-system package)
(package-arguments package))
(cons package lst)
lst))
(list))))
-60
View File
@@ -1,60 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest of packages built using the rebar-build-system.
;;; It is used to assist continuous integration of the beam-team branch.
;;;
;;;
;;; You can use it to build all covered packages with:
;;;
;;; ./pre-inst-env guix build -m etc/teams/beam/erlang-manifest.scm
;;;
;;; or to update them with:
;;;
;;; ./pre-inst-env guix refresh -u -m etc/teams/beam/erlang-manifest.scm
(use-modules (guix packages)
(guix profiles)
(guix gexp)
(guix build-system)
(ice-9 match)
(srfi srfi-1)
(srfi srfi-26))
(define* (has-rebar-build-system? build-system #:key modules #:allow-other-keys)
(or (eq? (build-system-name build-system) 'rebar)
(any
(match-lambda
(('guix 'build 'rebar-build-system) #t)
('((guix build rebar-build-system) . _) #t)
(_ #f))
(cond
((gexp? modules) (gexp->approximate-sexp modules))
((pair? modules) modules)
(else '())))))
(manifest
(map package->manifest-entry
(fold-packages
(lambda (package lst)
(if (apply has-rebar-build-system?
(package-build-system package)
(package-arguments package))
(cons package lst)
lst))
(list))))
+3 -4
View File
@@ -52,8 +52,7 @@
tools/versions-stable")))
(define (fetch-releng-content)
"Return a string corresponding to the content of the %GNOME-RELENG-VERSIONS-URI
file."
"Return an input port to the %GNOME-RELENG-VERSIONS-URI file."
(call-with-port (http-fetch/cached (%gnome-releng-versions-uri))
get-string-all))
@@ -76,8 +75,8 @@ NL < '\n'")
'(("adwaita-fonts" . "font-adwaita")))
(define (parse-releng data)
"Return the complete parse tree for DATA, a string representing the content of
a GNOME releng file."
"Return DATA, a string representing the content of a GNOME releng file, and
return the complete parse tree."
(let ((tree (peg:tree (match-pattern releng data))))
(match tree
(#f (raise-exception (make-releng-parser-error)))
-34
View File
@@ -1,34 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest of packages built using the hare-build-system.
;;; It is used to assist continuous integration of the hare-team branch.
(use-modules (guix packages)
(guix profiles)
(guix build-system))
(manifest
(map package->manifest-entry
(fold-packages
(lambda (package lst)
(if (or (eq? 'hare (build-system-name (package-build-system package)))
(string=? "hare" (package-name package)))
(cons package lst)
lst))
'())))
-40
View File
@@ -1,40 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest of packages built using any one of the
;;; asdf build systems. It is used to assist continuous integration of
;;; the lisp-team branch.
(use-modules (guix packages)
(guix profiles)
(guix build-system))
(manifest
(map package->manifest-entry
(fold-packages
(lambda (package lst)
(if (or (eq? 'asdf/sbcl (build-system-name (package-build-system package)))
(eq? 'asdf/ecl (build-system-name (package-build-system package)))
(eq? 'asdf/clasp (build-system-name (package-build-system package)))
(string=? "clasp-cl" (package-name package))
(string=? "ecl" (package-name package))
(string=? "sbcl" (package-name package)))
(cons package lst)
lst))
'())))
-35
View File
@@ -1,35 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This file returns a manifest of packages built using the python-build-system.
;;; It is used to assist continuous integration of the python-team branch.
(use-modules (guix packages)
(guix profiles)
(guix build-system))
(manifest
(map package->manifest-entry
(fold-packages
(lambda (package lst)
(if (or (eq? 'python (build-system-name (package-build-system package)))
(eq? 'pyproject (build-system-name (package-build-system package)))
(string=? "python" (package-name package)))
(cons package lst)
lst))
'())))
-48
View File
@@ -1,48 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Simon Tournier <zimon.toutoune@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(use-modules (guix packages)
(guix profiles)
(guix gexp)
(guix build-system)
(ice-9 match)
(srfi srfi-1)
(srfi srfi-26))
(define* (has-r-build-system? build-system #:key modules #:allow-other-keys)
(or (eq? (build-system-name build-system) 'r)
(any
(match-lambda
(('guix 'build 'r-build-system) #t)
('((guix build r-build-system) . _) #t)
(_ #f))
(cond
((gexp? modules) (gexp->approximate-sexp modules))
((pair? modules) modules)
(else '())))))
(manifest
(map package->manifest-entry
(fold-packages
(lambda (package lst)
(if (apply has-r-build-system?
(package-build-system package)
(package-arguments package))
(cons package lst)
lst))
(list))))
-413
View File
@@ -1,413 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This manifest returns build artfacts for all supported systems. This can be
;;; controlled by SUPPORTED_SYSTEMS environment variable. For the list of
;;; artifacts produced, see artifacts-for-system and the `<thing>-for-system?`
;;; procedures. NOTE: the --system argument does not change the system for which
;;; the resulting package is built. They return different definitions of the
;;; images. To change the system, pass different SUPPORTED_SYSTEMS.
(use-modules (gnu compression)
(gnu image)
(gnu packages graphviz)
(gnu packages imagemagick)
(gnu packages package-management)
(gnu packages perl)
(gnu services)
(gnu system image)
(gnu system install)
(gnu system)
(guix build-system gnu)
(guix build-system trivial)
(guix channels)
(guix gexp)
(guix git)
(guix grafts)
(guix memoization)
(guix monads)
(guix packages)
(guix profiles)
(guix records)
(guix scripts pack)
(guix store)
(guix ui)
(guix utils)
(ice-9 format)
(ice-9 match)
(srfi srfi-9)
(srfi srfi-26)
(srfi srfi-35))
;; For easier testing, use (snapshot) guix package from (gnu packages
;; package-management). Otherwise, the package is updated to current commit and
;; might not be substitutable, leading to longer build times.
(define %use-snapshot-package?
(string=? (or (getenv "GUIX_USE_SNAPSHOT_PACKAGE") "no") "yes"))
(define (%guix-version)
;; NOTE: while package-version guix is not correct in general,
;; it is correct for the release itself. At that time, the
;; guix package is updated to vX.Y.Z and it's the version
;; we want to use.
(package-version guix))
(define (%vm-image-path)
(search-path %load-path "gnu/system/examples/vm-image.tmpl"))
(define (%vm-image-efi-path)
(search-path %load-path "gnu/system/examples/vm-image-efi.tmpl"))
;; monadic record and gexp-compiler
;; taken from Inria
;; https://gitlab.inria.fr/numpex-pc5/wp3/guix-images/-/blob/17bf4585abc2d637faa5d339436e778b7c9fb1ce/modules/guix-hpc/packs.scm
;; XXX: The <monadic> hack below will hopefully become unnecessary once the
;; (guix scripts pack) interface switches to declarative style--i.e.,
;; file-like objects.
(define-record-type <monadic>
(monadic->declarative mvalue)
monadic?
(mvalue monadic-value))
(define-gexp-compiler (monadic-compiler (monadic <monadic>) system target)
(monadic-value monadic))
;; The tarball should be the same for every system.
;; Still, we need to decide what system to build it
;; for, so use the one that CI has most resources for.
(define (source-tarball-for-system? system)
(member system
'("x86_64-linux")))
(define (iso-for-system? system)
(member system
'("x86_64-linux" "i686-linux" "aarch64-linux")))
(define (qcow2-for-system? system)
(member system
'("x86_64-linux" "aarch64-linux")))
(define* (qcow2-gpt-for-system? system)
(string=? system "aarch64-linux"))
(define (copy-/etc/config.scm config)
"Copy the configuration.scm of the operating system to /etc/config.scm, for
user's convenience. The file has to be writable, not a link to the store, so
etc-service-type can't be used here. CONFIG is a pair of strings, (FROM . TO).
The config will be copied from FROM to TO."
(match config
((from . to)
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(when (not (file-exists? #$to))
(copy-file #$from #$to)
(make-file-writable #$to)))))
(_ (raise
(formatted-message-string
(G_ "unexpected config parameter, should be pair of strings: ~a"
config))))))
(define copy-/etc/config.scm-service-type
(service-type (name 'copy-/etc/config.scm)
(description
"Copy the system configuration file to /etc/config.scm.")
(extensions (list (service-extension activation-service-type
copy-/etc/config.scm)))
(default-value (cons "/run/current-system/configuration.scm"
"/etc/config.scm"))))
(define (operating-system-with-/etc/config.scm os)
"Copy the system configuration file to writable /etc/config.scm on first boot."
(operating-system
(inherit os)
(services (cons (service copy-/etc/config.scm-service-type)
(operating-system-user-services os)))))
(define (simple-provenance-entry config-file)
"Return system entries describing the operating system config, provided
through CONFIG-FILE."
(mbegin %store-monad
(return `(("configuration.scm"
,(local-file (assume-valid-file-name config-file)
"configuration.scm"))))))
;; This is mostly taken from provenance-service-type from (gnu services),
;; but it provides only configuration.scm, not channels.scm. This is
;; to get the same derivations for both Cuirass and local builds.
;; In the future, provenance-service-type could be adapted to support
;; this use case as well.
(define simple-provenance-service-type
(service-type (name 'provenance)
(extensions
(list (service-extension system-service-type
simple-provenance-entry)))
(default-value #f) ;the OS config file
(description
"Store configuration.scm of the system in the system
itself.")))
(define* (operating-system-with-simple-provenance
os
#:optional
(config-file
(operating-system-configuration-file
os)))
"Return a variant of OS that stores its CONFIG-FILE. This is similar to
`operating-system-with-provenance`, but it does copy only the
configuration.scm."
(operating-system
(inherit os)
(services (cons (service simple-provenance-service-type config-file)
(operating-system-user-services os)))))
(define (guix-package-commit guix)
;; Extract the commit of the GUIX package.
(match (package-source guix)
((? channel? source)
(channel-commit source))
(_
(apply (lambda* (#:key commit #:allow-other-keys) commit)
(package-arguments guix)))))
;; NOTE: Normally, we would use (current-guix), along with url
;; overridden to the upstream repository to not leak our local checkout.
;; But currently, the (current-guix) derivation has to be computed through
;; QEMU for systems other than your host system. This takes a lot of time,
;; it takes at least half an hour to get the derivations.
(define (guix-package/with-commit guix commit)
"Use the guix from (gnu packages package-management),
but override its commit to the specified version. Make sure
to also override the channel commit to have the correct
provenance."
(let ((scm-version (car (string-split (package-version guix) #\-))))
(package
(inherit guix)
(version (string-append scm-version "." (string-take commit 7)))
(source (git-checkout
(url (channel-url %default-guix-channel))
(commit commit)))
(arguments
(substitute-keyword-arguments (package-arguments guix)
((#:configure-flags flags '())
#~(cons*
(string-append "--with-channel-commit=" #$commit)
(filter (lambda (flag)
(not (string-prefix? "--with-channel-commit=" flag)))
#$flags))))))))
(define guix-for-images
(mlambda (system)
(cond
;; For testing purposes, use the guix package directly.
(%use-snapshot-package? guix)
;; Normally, update the guix package to current commit.
(else
(guix-package/with-commit guix (guix-package-commit (current-guix)))))))
(define %binary-tarball-compression "xz")
;; Like guix pack -C xz -s --localstatedir --profile-name=current-guix guix
(define* (binary-tarball-for-system system #:key (extra-packages '()))
(let* ((base-name (string-append "guix-binary-" (%guix-version) "." system))
(manifest (packages->manifest (cons* guix extra-packages)))
(profile (profile (content manifest)))
(inputs `(("profile" ,profile)))
(compression %binary-tarball-compression))
(manifest-entry
(name (string-append base-name ".tar." compression))
(version (%guix-version))
(item (monadic->declarative
(self-contained-tarball
base-name profile
#:profile-name "current-guix"
#:compressor (lookup-compressor compression)
#:localstatedir? #t))))))
;; Like guix system image -t iso9660 \
;; --label="GUIX_$${system}_$(VERSION)" gnu/system/install.scm
(define* (iso-for-system system)
(let* ((name (string-append
"guix-system-install-" (%guix-version) "." system ".iso"))
(base-os (make-installation-os
#:grub-displayed-version (%guix-version)
#:efi-only? (string=? system "aarch64-linux")))
(base-image (os->image base-os #:type iso-image-type))
(label (string-append "GUIX_" system "_"
(if (> (string-length (%guix-version)) 7)
(string-take (%guix-version) 7)
(%guix-version)))))
(manifest-entry
(name name)
(version (%guix-version))
(item (system-image
(image-with-label
(image
(inherit base-image)
(name (string->symbol name)))
label))))))
;; Like guix system image -t qcow2 gnu/system/examples/vm-image.tmpl
(define* (qcow2-for-system system)
(let* ((name (string-append
"guix-system-vm-image-" (%guix-version) "." system ".qcow2"))
(base-os-path
(if (qcow2-gpt-for-system? system)
(%vm-image-efi-path)
(%vm-image-path)))
(target-image-type
(if (qcow2-gpt-for-system? system)
qcow2-gpt-image-type
qcow2-image-type))
(base-os
(operating-system-with-/etc/config.scm
(operating-system-with-simple-provenance
(load base-os-path) base-os-path)))
(base-image (os->image base-os #:type target-image-type)))
(manifest-entry
(name name)
(version (%guix-version))
(item (system-image
(image
(inherit base-image)
(volatile-root? #f)
(size (* 20 (expt 1024 3))) ; 20 GiB to have spare space
(name (string->symbol name))))))))
(define* (guix-source-tarball)
(let ((guix (package
(inherit guix)
(native-inputs
(modify-inputs (package-native-inputs guix)
;; graphviz-minimal -> graphviz
(replace "graphviz" graphviz)
(append imagemagick)
(append perl))))))
(manifest-entry
(name (string-append "guix-" (%guix-version) ".tar.gz"))
(version (package-version guix))
(item (dist-package
guix
;; Guix is built from git source, not from tarball.
;; So it's fine to use its source directly.
(package-source guix))))))
(define* (manifest-entry-with-parameters system entry
#:key
(guix-for-images-proc guix-for-images))
(manifest-entry
(inherit entry)
(item
(with-parameters
((%current-system system)
(%current-target-system #f)
(current-guix-package (guix-for-images-proc system)))
(manifest-entry-item entry)))))
(define* (manifest-with-parameters system manifest
#:key
(guix-for-images-proc guix-for-images))
"Returns entries in the manifest accompanied with %current-system,
%current-target-sytem and current-guix-package parameters."
(make-manifest
(map (cut manifest-entry-with-parameters system <>
#:guix-for-images-proc guix-for-images-proc)
(manifest-entries manifest))))
(define (artifacts-for-system/nonparameterized system)
"Get all artifacts for given system. This will always include the
guix-binary tarball and optionally iso and/or qcow2 images."
(manifest
(append
(list
(binary-tarball-for-system system))
;; TODO: After source tarball generation is ready, uncomment.
;; (if (source-tarball-for-system? system)
;; (list (guix-source-tarball))
;; '())
(if (iso-for-system? system)
(list (iso-for-system system))
'())
(if (qcow2-for-system? system)
(list (qcow2-for-system system))
'()))))
(define* (artifacts-for-system system
#:key
(guix-for-images-proc guix-for-images))
"Collects all artifacts for a system. Gives them the proper %current-system
and %current-target-system parameters, so the --system passed on CLI is
irrelevant."
;; NOTE: parameterizing current system, because the tarball seems to somehow
;; depend on it early on. I haven't investigated it, but seems like a bug. Could
;; it be the gexp->derivation + monadic->declarative, not passing down the
;; system? Symptom: guix build --system=x86_64 -m artifacts-manifest.scm and
;; guix build --system=i686-linux -m artifacts-manifest.scm gives out different
;; results without the parameterization.
(parameterize
((%current-system system)
(%current-target-system #f)
(current-guix-package (guix-for-images-proc system)))
(manifest-with-parameters
system
(artifacts-for-system/nonparameterized system)
#:guix-for-images-proc guix-for-images-proc)))
(define (manifest->union manifest)
"Makes a union that will be a folder with all the entries symlinked. This
is different from a profile as it expects the entries are just simple files
and symlinks them by their manifest-entry-name."
(let ((entries (manifest-entries manifest)))
(computed-file
"artifacts-union"
(with-imported-modules '((guix build union)
(guix build utils))
#~(begin
(use-modules (guix build utils))
(mkdir-p #$output)
(for-each
(lambda* (entry)
(symlink (cdr entry)
(string-append #$output "/" (car entry))))
(list #$@(map (lambda (entry)
#~(cons
#$(manifest-entry-name entry)
#$(manifest-entry-item entry)))
entries))))))))
(define %supported-systems
(or (and
(getenv "SUPPORTED_SYSTEMS")
(string-split (getenv "SUPPORTED_SYSTEMS") #\ ))
'("x86_64-linux" "i686-linux"
"armhf-linux" "aarch64-linux"
"powerpc64le-linux" "riscv64-linux")))
(define supported-systems-union-manifest
(concatenate-manifests
(map artifacts-for-system
%supported-systems)))
(when %use-snapshot-package?
(warning (G_ "building images using the 'guix' package (snapshot)~%")))
(info (G_ "producing artifacts for the following systems: ~a~%")
%supported-systems)
supported-systems-union-manifest
-26
View File
@@ -1,26 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; Produce a single directory with all the artifacts inside of it, with proper
;;; names. They can then be easily copied to releasedir in Makefile. The files are
;;; symlinked to save space, but they should be copied out of the store as regular
;;; files.
(load "artifacts-manifest.scm")
(manifest->union
supported-systems-union-manifest)
@@ -1,94 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(use-modules (guix packages)
(guix gexp)
(gnu services)
(gnu tests install)
(ice-9 match)
(guix utils)
(srfi srfi-26)
(srfi srfi-1))
;; TODO find a better way to check for thunked fields
(define* (thunked-field? field obj)
(and
(procedure? obj)
(eq?
(car (procedure-minimum-arity obj))
1)
; Uhhh
(string-suffix? "(x)>"
(format #f "~a" obj))))
;; Prints names of all packages, prepending the service they
;; come from.
(define* (print-all-packages obj #:optional (pred package?))
(match obj
((? pred)
(format #t "\"~a\"~%" (package-name obj))
(list obj))
((? gexp?)
(list))
((a . b)
(append (print-all-packages a pred)
(print-all-packages b pred)))
((_ ...)
(apply append
(map (cut print-all-packages <> pred)
obj)))
(#(_ ...)
(print-all-packages (vector->list obj) proc))
((or (? service-type?)
(? origin?))
(list))
((? record?)
(let* ((record-type (record-type-descriptor obj))
(record-fields (record-type-fields record-type)))
(when (service? obj)
(format #t ";; ~a-service~%" (service-type-name (service-kind obj))))
(apply append
(map (lambda (field)
(let* ((accessor (record-accessor record-type field))
(field-obj (accessor obj)))
(if (thunked-field? field field-obj)
(print-all-packages (field-obj obj) pred)
(print-all-packages field-obj pred))))
record-fields))))
((? parameter?)
(list))
(_
(list))))
(define full-installer-os
((@@ (gnu tests install) installation-target-desktop-os-for-gui-tests)))
(define minimal-installer-os
((@@ (gnu tests install) installation-target-os-for-gui-tests)))
(display "Full os packages:")
(print-all-packages full-installer-os)
(display "Minimal os packages:")
(print-all-packages minimal-installer-os)
;; Note that the printed packages will contain duplicates.
;; I recommend to first put packages out of the profile service
;; and out of packages field (they will be above service packages)
;; at the bottom of the list and then filtering only unique lines, ie.
;; with `awk '!a[$0]++'`. And lastly removing services that no longer
;; have packages and also the packages that are already in minimal manifest
;; (in case of desktop manifest)
+1 -1
View File
@@ -22,7 +22,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cargo)
#:use-module ((gnu packages rust-sources) #:prefix package:)
#:use-module (gnu packages rust-sources)
#:export (lookup-cargo-inputs))
;;;
-8
View File
@@ -65,7 +65,6 @@
grub-efi-bootloader
grub-efi-removable-bootloader
grub-efi32-bootloader
grub-efi32-removable-bootloader
grub-efi-netboot-bootloader
grub-efi-netboot-removable-bootloader
grub-mkrescue-bootloader
@@ -845,13 +844,6 @@ symlink to the store is not needed in this case."
(name 'grub-efi32)
(package grub-efi32)))
(define grub-efi32-removable-bootloader
(bootloader
(inherit grub-efi32-bootloader)
(name 'grub-efi32-removable-bootloader)
(installer (make-grub-efi-installer #:removable? #t
#:efi32? #t))))
(define (make-grub-efi-netboot-bootloader name subdir)
(bootloader
(name name)
+2 -20
View File
@@ -7,8 +7,6 @@
;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2023-2024 Herman Rimm <herman@rimm.ee>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2025 dan <i@dan.games>
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -48,7 +46,6 @@
u-boot-pine64-lts-bootloader
u-boot-pinebook-bootloader
u-boot-pinebook-pro-rk3399-bootloader
u-boot-nanopi-r4s-rk3399-bootloader
u-boot-puma-rk3399-bootloader
u-boot-rock-4c-plus-rk3399-bootloader
u-boot-rock64-rk3328-bootloader
@@ -65,12 +62,7 @@
((? string?)
(list #~(install-file (string-append bootloader #$file)
install-dir)))
((? file-like?)
(list #~(mkdir-p install-dir)
#~(copy-file #$file
(string-append install-dir
"/"
#$(plain-file-name file)))))
((? file-like?) (list #~(install-file #$file install-dir)))
(#f '()))))
#~(lambda (bootloader device mount-point)
(let ((install-dir (string-append mount-point "/boot")))
@@ -138,12 +130,7 @@ is BLOCK-SIZE * COUNT, or FILE size if COUNT is not given."
;; starfive_visionfive2.dtb. We cannot guarantee that users will
;; update this U-Boot, so set the FDT explicitly.
(plain-file "uEnv.txt"
(string-join
(list
"boot_targets=mmc1 nvme0 mmc0 dhcp"
"bootcmd_mmc1=bootflow scan"
"fdtfile=starfive/jh7110-starfive-visionfive-2-v1.3b.dtb")
"\n"))))
"fdtfile=starfive/jh7110-starfive-visionfive-2-v1.3b.dtb~%")))
;;;
@@ -286,11 +273,6 @@ is BLOCK-SIZE * COUNT, or FILE size if COUNT is not given."
(inherit u-boot-rockchip-bootloader)
(package u-boot-pinebook-pro-rk3399)))
(define u-boot-nanopi-r4s-rk3399-bootloader
(bootloader
(inherit u-boot-rockchip-bootloader)
(package u-boot-nanopi-r4s-rk3399)))
(define u-boot-ts7970-q-2g-1000mhz-c-bootloader
;; This bootloader doesn't really need to be installed, as it is read from
;; an SPI memory chip, not the SD card. It is copied to /boot/u-boot.imx
+9 -16
View File
@@ -359,7 +359,7 @@ to it atomically and set the appropriate permissions."
(left unused-subid-range-left ;previous unused subuid range or #f
(default #f))
(min unused-subid-range-min ;lower bound of this unused subuid range
(default 0))
(default %subordinate-id-min))
(max unused-subid-range-max ;upper bound
(default %subordinate-id-max))
(right unused-subid-range-right ;next unused subuid range or #f
@@ -555,10 +555,7 @@ will be marked as used in it."
(define actual-range
(subid-range
(inherit range)
;; New IDs are only allocated between %subordinate-id-min and
;; %subordinate-id-max.
(start
(max allocation-start %subordinate-id-min))))
(start allocation-start)))
(if (within-interval? allocation actual-range)
(values
@@ -606,6 +603,13 @@ is visited to find the best unused range that can hold RANGE."
(define range-end
(subid-range-end range))
(unless (and (subordinate-id? range-start)
(subordinate-id? range-end))
(raise
(condition
(&invalid-subid-range-error
(range range)))))
(define less?
(< range-end allocation-start))
(define more?
@@ -798,23 +802,12 @@ new UIDs."
(define* (allocate-subids ranges #:optional (current-ranges '()))
"Return a list of subids entries for RANGES, a list of <subid-range>. IDs
found in CURRENT-RANGES, a list of subid entries, are reused."
;; Ranges from disk must always have a start.
(let ((generic (any (compose not subid-range-has-start?) current-ranges)))
(when generic
(raise
(condition
(&specific-subid-range-expected-error
(range generic))))))
(for-each
(lambda (range)
;; New ranges must always be included in the current supported set.
(unless (or (not (subid-range-has-start? range))
(and (subordinate-id? (subid-range-start range))
(subordinate-id? (subid-range-end range))))
(raise
(condition (&invalid-subid-range-error (range range))))))
ranges)
(define sorted-ranges
(stable-sort ranges
subid-range-less))
+16 -30
View File
@@ -11,7 +11,6 @@
;;; Copyright © 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -279,17 +278,6 @@ they already exist."
(for-each ensure-user-home users))
(define* (canonicalize-path* file)
"A safe version of `canonicalize-path' that warns rather than raises on errors.
`canonicalize-path' uses `realpath(2)', which can return various errors like
EINVAL, ELOOP, etc."
(or (false-if-exception (canonicalize-path file))
(begin
(format (current-warning-port)
"warning: could not canonicalize file `~a'; using as-is~%"
file)
file)))
(define (activate-etc etc)
"Install ETC, a directory in the store, as the source of static files for
/etc."
@@ -312,28 +300,26 @@ EINVAL, ELOOP, etc."
(rm-f "/etc/ssl")
(symlink "/run/current-system/profile/etc/ssl" "/etc/ssl")
(rm-f "/etc/static")
(symlink etc "/etc/static")
(for-each (lambda (file)
(let ((target (string-append "/etc/" file))
;; Canonicalize the file names to resolve any symlinks, to
;; ensure /etc/localtime points to a timezone data file in
;; the store containing the timezone name. This is done
;; for compatibility with software expecting this systemd
;; convention to be followed.
(source (canonicalize-path* (string-append etc "/" file))))
(source (string-append "/etc/static/" file)))
(rm-f target)
(cond ((string=? (basename target) "sudoers")
(begin
;; /etc/sudoers must be a regular file.
(copy-file source target)
;; XXX: dirty hack to meet sudo's expectations
(chmod target #o440)))
((string=? (basename target) "hosts")
;; /etc/hosts must be a regular file, as some software
;; like vpn-slice expect to be able to write to it.
(copy-file source target))
(else ;usual case
(symlink source target)))))
;; Things such as /etc/sudoers must be regular files, not
;; symlinks; furthermore, they could be modified behind our
;; back---e.g., with 'visudo'. Thus, make a copy instead of
;; symlinking them.
(if (file-is-directory? source)
(symlink source target)
(copy-file source target))
;; XXX: Dirty hack to meet sudo's expectations.
(when (string=? (basename target) "sudoers")
(chmod target #o440))))
(scandir etc (negate dot-or-dot-dot?)
;; The default is 'string-locale<?', but we don't have
;; it when run from the initrd's statically-linked
;; Guile.
-2
View File
@@ -1312,8 +1312,6 @@ corresponds to the symbols listed in FLAGS."
(logior MS_STRICTATIME (loop rest)))
(('lazy-time rest ...)
(logior MS_LAZYTIME (loop rest)))
(('remount rest ...)
(logior MS_REMOUNT (loop rest)))
(('shared rest ...)
(loop rest))
(()
+7 -70
View File
@@ -1,12 +1,12 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2020, 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2022 Pavel Shlyak <p.shlyak@pantherx.org>
;;; Copyright © 2022, 2025 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
@@ -66,14 +66,12 @@
(number->string
(inexact->exact (ceiling (/ size 1024)))))
(define* (estimate-partition-size root #:optional (margin .25))
(define (estimate-partition-size root)
"Given the ROOT directory, evaluate and return its size. As this doesn't
take the partition metadata size into account, take a MARGIN. As this in
take the partition metadata size into account, take a 25% margin. As this in
turn doesn't take any constant overhead into account, force a 1-MiB minimum."
(max (ash 1 20)
;; without inexact->exact, 'guess can result in an error like that:
;; "Wrong type (expecting exact integer): 7179941140.0".
(inexact->exact (round (* (+ 1. margin) (file-size root))))))
(* 1.25 (file-size root))))
(define* (make-btrfs-image partition target root)
"Handle the creation of BTRFS partition images. See
@@ -118,43 +116,7 @@ turn doesn't take any constant overhead into account, force a 1-MiB minimum."
(size-in-kib
(if (eq? size 'guess)
(estimate-partition-size root)
size)))))
;; 'mke2fs' does not create directory indexes by default, meaning that
;; directories have a limit of 65,000 sub-directories, which can be
;; problematic for the store. To avoid that, run 'e2fsck -D' to create
;; those directory indexes. See
;; <https://github.com/tytso/e2fsprogs/issues/257>.
(invoke "e2fsck" "-fDy" target)))
(define* (make-f2fs-image partition target root
#:key
(owner-uid 0)
(owner-gid 0))
"Handle the creation of F2FS partition images. See 'make-partition-image'."
(let ((size (partition-size partition))
(label (partition-label partition))
(uuid (partition-uuid partition))
(fs-options (partition-file-system-options partition)))
;; The mkfs.f2fs utility can't create files, so we need to create one
;; before running it.
(call-with-output-file target (const #t))
(truncate-file
target
(if (eq? size 'guess)
;; The F2FS filesystem has more overhead than other filesystems like
;; BTRFS and ext4.
(estimate-partition-size root .50)
size))
(apply invoke "fakeroot" "mkfs.f2fs"
"-l" label
"-R" (format #f "~a:~a" owner-uid owner-gid)
`(,@(if uuid
`("-U" ,(uuid->string uuid))
'())
,@fs-options
,target))
(invoke "fakeroot" "sload.f2fs" "-P" "-f" root target)))
size)))))))
(define* (make-vfat-image partition target root fs-bits)
"Handle the creation of VFAT partition images. See 'make-partition-image'."
@@ -182,23 +144,6 @@ turn doesn't take any constant overhead into account, force a 1-MiB minimum."
(string-append "::" file))))
(scandir root))))
(define* (make-swap-image partition target)
"Make a swap partition of a certain size."
(let ((size (partition-size partition))
(label (partition-label partition))
(uuid (partition-uuid partition))
(fs-options (partition-file-system-options partition)))
(apply invoke "fakeroot" "mkswap"
"--pagesize" "4096"
"--endianness" "little"
"-L" label
"--file" target
"--size" (number->string size)
`(,@(if uuid
`("-U" ,(uuid->string uuid))
'())
,@fs-options))))
(define* (make-unformatted-image partition target)
"Make an unformatted partition of a certain size."
(let ((size (partition-size partition)))
@@ -217,14 +162,10 @@ ROOT directory to populate the image."
(make-btrfs-image partition target root))
((string-prefix? "ext" type)
(make-ext-image partition target root))
((string=? "f2fs" type)
(make-f2fs-image partition target root))
((or (string=? type "vfat") (string=? type "fat16"))
(make-vfat-image partition target root 16))
((string=? type "fat32")
(make-vfat-image partition target root 32))
((string=? "swap" type)
(make-swap-image partition target))
((string=? type "unformatted")
(make-unformatted-image partition target))
(else
@@ -428,11 +369,7 @@ GRUB configuration and OS-DRV as the stuff in it."
"-not" "-wholename" "/System/*"
"-not" "-name" "unicode.pf2"
"-not" "-name" "bzImage"
"-not" "-name" "zImage"
"-not" "-name" "Image"
"-not" "-name" "vmlinuz"
"-not" "-name" "*.gz" ; initrd
"-not" "-name" "*.zst" ; all man pages
"-not" "-name" "*.gz" ; initrd & all man pages
"-not" "-name" "*.png" ; includes grub-image.png
"-exec" "set_filter" "--zisofs"
"--")
+1 -72
View File
@@ -46,26 +46,7 @@
make-static-device-nodes
configure-qemu-networking
boot-system
linux-console
linux-console?
linux-console-device
linux-console-can-read?
linux-console-can-write?
linux-console-can-unblank?
linux-console-enabled?
linux-console-preferred?
linux-console-primary?
linux-console-printk?
linux-console-braille?
linux-console-safe-when-cpu-offline?
linux-console-major
linux-console-minor
linux-console-virtual?
read-linux-consoles))
boot-system))
;;; Commentary:
;;;
@@ -694,56 +675,4 @@ the root file system...\n" root-delay)
(start-repl)))))
#:on-error on-error))
(define-record-type <linux-console>
(make-linux-console device can-read? can-write? can-unblank?
enabled? preferred? primary? printk? braille?
safe-when-cpu-offline? major minor virtual?)
linux-console?
(device linux-console-device)
(can-read? linux-console-can-read?)
(can-write? linux-console-can-write?)
(can-unblank? linux-console-can-unblank?)
(enabled? linux-console-enabled?)
(preferred? linux-console-preferred?)
(primary? linux-console-primary?)
(printk? linux-console-printk?)
(braille? linux-console-braille?)
(safe-when-cpu-offline? linux-console-safe-when-cpu-offline?)
(major linux-console-major)
(minor linux-console-minor)
(virtual? linux-console-virtual?))
(define* (read-linux-consoles #:optional (consoles-file "/proc/consoles"))
"Parses CONSOLES-FILE and returns a list of <linux-console> records."
(if (not (file-exists? consoles-file))
'()
(with-input-from-file consoles-file
(lambda ()
(let ((line-regex (make-regexp
"^([^ ]+)[ ]+(.+)[ ]+([0-9]+):([0-9]+)$"))
(virt-regex (make-regexp "^tty[0-9]+$")))
(let loop ((line (read-line))
(results '()))
(cond
((eof-object? line)
(reverse results))
((regexp-exec line-regex line)
=> (lambda (m)
(let* ((dev (match:substring m 1))
(flags (match:substring m 2))
(major (string->number (match:substring m 3)))
(minor (string->number (match:substring m 4)))
(virtual? (regexp-exec virt-regex dev))
(has? (lambda (c)
(string-any (lambda (f) (char=? f c)) flags))))
(loop (read-line)
(cons (make-linux-console
dev
(has? #\R) (has? #\W) (has? #\U) (has? #\E)
(has? #\C) (has? #\B) (has? #\p) (has? #\b)
(has? #\a)
major minor virtual?)
results)))))
(else (loop (read-line) results)))))))))
;;; linux-boot.scm ends here
+104 -137
View File
@@ -190,10 +190,7 @@ for the process."
(remount-read-only "/"))))
(define* (initialize-user-namespace pid host-uids
#:key
(host-uid (getuid))
(host-gid (getgid))
(guest-uid 0) (guest-gid 0))
#:key (guest-uid 0) (guest-gid 0))
"Configure the user namespace for PID. HOST-UIDS specifies the number of
host user identifiers to map into the user namespace. GUEST-UID and GUEST-GID
specify the first UID (respectively GID) that host UIDs (respectively GIDs)
@@ -204,21 +201,24 @@ map to in the namespace."
(define (scope file)
(string-append proc-dir file))
;; Only root can write to the gid map without first disabling the
;; setgroups syscall.
(unless (and (zero? host-uid) (zero? host-gid))
(call-with-output-file (scope "/setgroups")
(lambda (port)
(display "deny" port))))
(let ((uid (getuid))
(gid (getgid)))
;; Map the user/group that created the container to the root user
;; within the container.
(call-with-output-file (scope "/uid_map")
(lambda (port)
(format port "~d ~d ~d" guest-uid host-uid host-uids)))
(call-with-output-file (scope "/gid_map")
(lambda (port)
(format port "~d ~d ~d" guest-gid host-gid host-uids))))
;; Only root can write to the gid map without first disabling the
;; setgroups syscall.
(unless (and (zero? uid) (zero? gid))
(call-with-output-file (scope "/setgroups")
(lambda (port)
(display "deny" port))))
;; Map the user/group that created the container to the root user
;; within the container.
(call-with-output-file (scope "/uid_map")
(lambda (port)
(format port "~d ~d ~d" guest-uid uid host-uids)))
(call-with-output-file (scope "/gid_map")
(lambda (port)
(format port "~d ~d ~d" guest-gid gid host-uids)))))
(define (namespaces->bit-mask namespaces)
"Return the number suitable for the 'flags' argument of 'clone' that
@@ -239,14 +239,12 @@ corresponds to the symbols in NAMESPACES."
#:key (guest-uid 0) (guest-gid 0)
(populate-file-system (const #t))
(loopback-network? #t)
(lock-mounts? #t)
writable-root?)
"Run THUNK in a new container process and return its PID. ROOT specifies
the root directory for the container. MOUNTS is a list of <file-system>
objects that specify file systems to mount inside the container. NAMESPACES
is a list of symbols that correspond to the possible Linux namespaces: mnt,
ipc, uts, user, and net. When LOCK-MOUNTS? is true, arrange so that none of
MOUNTS can be unmounted or remounted individually from within THUNK.
ipc, uts, user, and net.
When LOOPBACK-NETWORK? is true and 'net is amount NAMESPACES, set up the
loopback device (\"lo\") and a minimal /etc/hosts.
@@ -263,93 +261,75 @@ that host UIDs (respectively GIDs) map to in the namespace."
;; child process blocks until the parent writes to it.
(match (socketpair PF_UNIX (logior SOCK_CLOEXEC SOCK_STREAM) 0)
((child . parent)
(safe-clone
(namespaces->bit-mask namespaces)
(lambda ()
(call-with-clean-exit
(lambda ()
(close-port parent)
;; Wait for parent to set things up.
(match (read child)
('ready
(purify-environment)
(when (and (memq 'mnt namespaces)
(not (string=? root "/")))
(catch #t
(lambda ()
(mount-file-systems root mounts
#:mount-/proc? (memq 'pid namespaces)
#:mount-/sys? (memq 'net
namespaces)
#:populate-file-system
(lambda ()
(populate-file-system)
(when (and (memq 'net namespaces)
loopback-network?)
(set-network-interface-up "lo")
(let ((flags (namespaces->bit-mask namespaces)))
(match (clone flags)
(0
(call-with-clean-exit
(lambda ()
(close-port parent)
;; Wait for parent to set things up.
(match (read child)
('ready
(purify-environment)
(when (and (memq 'mnt namespaces)
(not (string=? root "/")))
(catch #t
(lambda ()
(mount-file-systems root mounts
#:mount-/proc? (memq 'pid namespaces)
#:mount-/sys? (memq 'net
namespaces)
#:populate-file-system
(lambda ()
(populate-file-system)
(when (and (memq 'net namespaces)
loopback-network?)
(set-network-interface-up "lo")
;; When isolated from the
;; network, provide a minimal
;; /etc/hosts to resolve
;; "localhost".
(mkdir-p "/etc")
(call-with-output-file "/etc/hosts"
(lambda (port)
(display "127.0.0.1 localhost\n" port)
(chmod port #o444)))))
#:writable-root?
(or writable-root?
(not (memq 'mnt namespaces)))))
(lambda args
;; Forward the exception to the parent process.
;; FIXME: SRFI-35 conditions and non-trivial objects
;; cannot be 'read' so they shouldn't be written as is.
(write args child)
(primitive-exit 3))))
;; When isolated from the
;; network, provide a minimal
;; /etc/hosts to resolve
;; "localhost".
(mkdir-p "/etc")
(call-with-output-file "/etc/hosts"
(lambda (port)
(display "127.0.0.1 localhost\n" port)
(chmod port #o444)))))
#:writable-root?
(or writable-root?
(not (memq 'mnt namespaces)))))
(lambda args
;; Forward the exception to the parent process.
;; FIXME: SRFI-35 conditions and non-trivial objects
;; cannot be 'read' so they shouldn't be written as is.
(write args child)
(primitive-exit 3))))
;; TODO: Manage capabilities.
(write 'ready child)
(close-port child)
(thunk))
(_ ;parent died or something
(primitive-exit 2))))))
(pid
(close-port child)
(when (memq 'user namespaces)
(initialize-user-namespace pid host-uids
#:guest-uid guest-uid
#:guest-gid guest-gid))
;; TODO: Initialize cgroups.
(write 'ready parent)
(newline parent)
(when (and lock-mounts?
(memq 'mnt namespaces)
(memq 'user namespaces))
;; Create a new mount namespace owned by a new user
;; namespace to "lock" together previous mounts, such that
;; they cannot be unmounted or remounted separately--see
;; mount_namespaces(7).
(let ((uid (getuid)) (gid (getgid)))
(unshare (logior CLONE_NEWUSER CLONE_NEWNS))
(when (file-exists? "/proc/self")
(initialize-user-namespace (getpid)
host-uids
#:host-uid uid
#:host-gid gid
#:guest-uid guest-uid
#:guest-gid guest-gid))))
;; TODO: Manage capabilities.
(write 'ready child)
(close-port child)
(thunk))
(_ ;parent died or something
(primitive-exit 2))))))
(lambda (pid)
(close-port child)
(when (memq 'user namespaces)
(initialize-user-namespace pid host-uids
#:guest-uid guest-uid
#:guest-gid guest-gid))
;; TODO: Initialize cgroups.
(write 'ready parent)
(newline parent)
;; Check whether the child process' setup phase succeeded.
(let ((message (read parent)))
(close-port parent)
(match message
('ready ;success
pid)
(((? symbol? key) args ...) ;exception
(apply throw key args))
(_ ;unexpected termination
#f))))))))
;; Check whether the child process' setup phase succeeded.
(let ((message (read parent)))
(close-port parent)
(match message
('ready ;success
pid)
(((? symbol? key) args ...) ;exception
(apply throw key args))
(_ ;unexpected termination
#f)))))))))
;; FIXME: This is copied from (guix utils), which we cannot use because it
;; would pull (guix config) and all.
@@ -396,7 +376,6 @@ if there are no child processes left."
(define* (call-with-container mounts thunk #:key (namespaces %namespaces)
(host-uids 1) (guest-uid 0) (guest-gid 0)
(lock-mounts? #t)
(relayed-signals (list SIGINT SIGTERM))
(child-is-pid1? #t)
(populate-file-system (const #t))
@@ -481,7 +460,6 @@ load path must be adjusted as needed."
(call-with-temporary-directory
(lambda (root)
(let ((pid (run-container root mounts namespaces host-uids thunk*
#:lock-mounts? lock-mounts?
#:guest-uid guest-uid
#:guest-gid guest-gid
#:populate-file-system populate-file-system
@@ -502,35 +480,24 @@ return the exit status, an integer as returned by 'waitpid'."
(0
(call-with-clean-exit
(lambda ()
;; First, determine the user namespace that owns the pid namespace and
;; join that user namespace (the assumption is that it also owns all
;; the other namespaces). It's important that the user namespace is
;; joined first, so that the user will have the privileges to join the
;; other namespaces.
(let* ((pid-ns (open-fdes (namespace-file pid "pid")
(logior O_CLOEXEC O_RDONLY)))
(user-ns (get-user-ns pid-ns)))
(close-fdes pid-ns)
(unless (equal? (stat user-ns)
(stat (namespace-file (getpid) "user")))
(setns user-ns 0))
(close-fdes user-ns)
;; Then join all the remaining namespaces.
(for-each (lambda (ns)
(let ((source (namespace-file (getpid) ns))
(target (namespace-file pid ns)))
;; Joining the namespace that the process already
;; belongs to would throw an error so avoid that.
;; XXX: This /proc interface leads to TOCTTOU.
(unless (string=? (readlink source) (readlink target))
(call-with-input-file target
(lambda (new-ns-port)
(setns (fileno new-ns-port) 0))))))
;; It's important that the mount namespace is joined last,
;; otherwise the /proc mount point would no longer be
;; accessible.
'("ipc" "uts" "net" "pid" "mnt")))
(for-each (lambda (ns)
(let ((source (namespace-file (getpid) ns))
(target (namespace-file pid ns)))
;; Joining the namespace that the process already
;; belongs to would throw an error so avoid that.
;; XXX: This /proc interface leads to TOCTTOU.
(unless (string=? (readlink source) (readlink target))
(call-with-input-file source
(lambda (current-ns-port)
(call-with-input-file target
(lambda (new-ns-port)
(setns (fileno new-ns-port) 0))))))))
;; It's important that the user namespace is joined first,
;; so that the user will have the privileges to join the
;; other namespaces. Furthermore, it's important that the
;; mount namespace is joined last, otherwise the /proc mount
;; point would no longer be accessible.
'("user" "ipc" "uts" "net" "pid" "mnt"))
(purify-environment)
(chdir "/")
+1 -23
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021-2023 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2022-2023, 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2023 Carlo Zancanaro <carlo@zancanaro.id.au>
;;;
;;; This file is part of GNU Guix.
@@ -58,7 +58,6 @@
with-shell-quotation-bindings
environment-variable-shell-definitions
shell-variable-definitions
home-files-directory
xdg-configuration-files-directory
xdg-data-files-directory
@@ -242,27 +241,6 @@ ensures variable values are properly quoted."
"\n")))
variables))))
(define (shell-variable-definitions variables)
"Return a gexp that evaluates to a list of POSIX shell statements defining
VARIABLES, a list of variable name/value pairs, as shell variables (not
environment variables). The returned code ensures variable values are
properly quoted."
(with-shell-quotation-bindings
#~(string-append
#$@(map (match-lambda
((key . (or (? string? value)
(? file-like? value)
(? gexp? value)))
#~(string-append #$key "="
(shell-double-quote #$value)
"\n"))
((key . (? literal-string? value))
#~(string-append #$key "="
(shell-single-quote
#$(literal-string-value value))
"\n")))
variables))))
(define (environment-variables->setup-environment-script vars)
"Return a file that can be sourced by a POSIX compliant shell which
initializes the environment. The file will source the home
+1 -1
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2025 Giacomo Leidi <goodoldpaul@autistici.org>
;;;
;;; This file is part of GNU Guix.
;;;
+1 -1
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2025 Giacomo Leidi <goodoldpaul@autistici.org>
;;;
;;; This file is part of GNU Guix.
;;;
+2 -97
View File
@@ -3,7 +3,6 @@
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2023 conses <contact@conses.eu>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 dan <i@dan.games>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,7 +25,7 @@
#:use-module (gnu services configuration)
#:use-module (gnu services xorg)
#:autoload (gnu packages glib) (dbus)
#:autoload (gnu packages xdisorg) (darkman redshift unclutter)
#:autoload (gnu packages xdisorg) (redshift unclutter)
#:autoload (gnu packages xorg) (setxkbmap xmodmap)
#:use-module (guix records)
#:use-module (guix gexp)
@@ -47,11 +46,7 @@
home-xmodmap-configuration
home-xmodmap-service-type
home-startx-command-service-type
home-darkman-configuration
home-darkman-configuration?
home-darkman-service-type))
home-startx-command-service-type))
;;;
@@ -452,93 +447,3 @@ buttons under the Xorg display server via user-defined expressions.")))
(define-service-type-mapping
startx-command-service-type => home-startx-command-service-type)
;;;
;;; Darkman.
;;;
(define-maybe number)
(define (serialize-number field value)
(string-append (match field
('latitude "lat")
('longitude "lng")
(_ (symbol->string field)))
": " (number->string value) "\n"))
(define (serialize-boolean field value)
(string-append (match field
('use-geoclue "usegeoclue")
('dbus-server "dbusserver")
(_ "portal"))
": " (if value "true" "false") "\n"))
(define-configuration home-darkman-configuration
(darkman
(file-like darkman)
"The @code{darkman} package to use.")
(latitude
maybe-number
"Latitude, used at startup or when @code{use-geoclue} is @code{#f}. More than
one decimal point is generally not needed.")
(longitude
maybe-number
"Longitude, used at startup or when @code{use-geoclue} is @code{#f}. More than
one decimal point is generally not needed.")
(use-geoclue
(boolean #f)
"Whether to use a local geoclue instance to determine the current location.
Setting this to false without explicitly setting latitude and longtitude
disables automatic transitions entirely.")
(dbus-server
(boolean #t)
"Whether to expose the current mode via darkman's own D-Bus API.")
(portal
(boolean #t)
"Whether to expose the current mode via the XDG settings portal D-Bus API."))
(define (serialize-home-darkman-configuration config)
(mixed-text-file
"config.yaml"
(serialize-configuration config home-darkman-configuration-fields)))
(define (home-darkman-configuration-files config)
`(("darkman/config.yaml" ,(serialize-home-darkman-configuration config))))
(define (home-darkman-profile-service config)
(list (home-darkman-configuration-darkman config)))
(define (home-darkman-shepherd-service config)
(list
(shepherd-service
(provision '(darkman))
(requirement '(dbus))
(modules '((shepherd support))) ;for '%user-log-dir'
(start #~(make-forkexec-constructor
(list #$(file-append (home-darkman-configuration-darkman config)
"/bin/darkman")
"run")
#:log-file
(string-append %user-log-dir "/darkman.log")))
(stop #~(make-kill-destructor)))))
(define home-darkman-service-type
(service-type
(name 'home-darkman)
(extensions
(list (service-extension home-shepherd-service-type
home-darkman-shepherd-service)
(service-extension home-xdg-configuration-files-service-type
home-darkman-configuration-files)
(service-extension home-profile-service-type
home-darkman-profile-service)))
(default-value (home-darkman-configuration))
(description "Run the @code{darkman} daemon, which will invoke scripts in
$XDG_DATA_DIRS/dark-mode.d/ when sundown, and invoke scripts in
$XDG_DATA_DIRS/light-mode.d/ when sunrise.")))
+1 -1
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2024 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;;
;;; This file is part of GNU Guix.
;;;
+1 -1
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2023 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2023 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2023 Andrew Patterson <andrewpatt7@gmail.com>
;;;
;;; This file is part of GNU Guix.
-104
View File
@@ -1,104 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published by
;;; the Free Software Foundation, either version 3 of the License, or
;;; (at your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu home services gnome)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages gnome)
#:use-module (gnu system accounts)
#:use-module (gnu services configuration)
#:use-module (gnu home services)
#:use-module (gnu home services shepherd)
#:export (gcr-ssh-agent-configuration
gcr-ssh-agent-configuration?
gcr-ssh-agent-configuration-fields
gcr-ssh-agent-configuration-package
gcr-ssh-agent-configuration-log-file
home-gcr-ssh-agent-log-file
home-gcr-ssh-agent-shepherd-service
home-gcr-ssh-agent-service-type))
(define-maybe/no-serialization string)
(define-configuration/no-serialization gcr-ssh-agent-configuration
(package
(package gcr)
"The @code{gcr} package to use.")
(log-file
(maybe-string)
"Where the service will write its logs. If unset, it defaults to
@file{$HOME/.local/state/shepherd/gcr-ssh-agent.log}."))
(define (home-gcr-ssh-agent-log-file config)
(define maybe-log-file (gcr-ssh-agent-configuration-log-file config))
(if (maybe-value-set? maybe-log-file)
maybe-log-file
#~(string-append %user-log-dir "/gcr-ssh-agent.log")))
(define (home-gcr-ssh-agent-shepherd-service config)
(let ((package
(gcr-ssh-agent-configuration-package config))
(log-file (home-gcr-ssh-agent-log-file config)))
(list
(shepherd-service
(provision '(gcr-ssh-agent ssh-agent))
(modules
;;for '%user-log-dir' and '%user-runtime-dir'
'((shepherd support)))
(start
#~(let* ((socket-directory
(string-append %user-runtime-dir
"/gcr"))
(socket-endpoint
(endpoint
(make-socket-address
AF_UNIX
(string-append socket-directory "/ssh"))
#:name "ssh"
#:socket-directory-permissions #o700)))
(make-systemd-constructor
(list #$(file-append package
"/libexec/gcr-ssh-agent")
"-d" socket-directory)
(list socket-endpoint)
;; With #:lazy-start #t the first ssh connection
;; hangs indefinitely.
#:lazy-start? #f
#:log-file #$log-file)))
(stop #~(make-systemd-destructor))))))
(define (home-gcr-ssh-agent-environment-variables config)
`(("SSH_AUTH_SOCK" . "${XDG_RUNTIME_DIR}/gcr/ssh")))
(define home-gcr-ssh-agent-service-type
(service-type
(name 'home-gcr-ssh-agent)
(extensions
(list (service-extension
home-shepherd-service-type
home-gcr-ssh-agent-shepherd-service)
(service-extension home-environment-variables-service-type
home-gcr-ssh-agent-environment-variables)))
(default-value (gcr-ssh-agent-configuration))
(description
"Provides @code{gcr-ssh-agent} Shepherd service and installs
@code{gcr} in the system profile.")))
+1 -3
View File
@@ -23,7 +23,6 @@
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages xorg)
#:use-module (gnu packages wm)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
@@ -72,8 +71,7 @@ environment variables set for a Wayland desktop session."
niri
xdg-desktop-portal
xdg-desktop-portal-gnome
xdg-desktop-portal-gtk
xwayland-satellite)))))
xdg-desktop-portal-gtk)))))
(description "Install and configure Niri, a scrollable tiling Wayland
compositor. This service starts Niri as a user-level desktop session with
proper environment variables set for Wayland compatibility. It ensures Niri
-221
View File
@@ -1,221 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2025 Lilah Tascheter <lilah@lunabee.space>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu home services secrets)
#:use-module (gnu home services)
#:use-module (gnu home services shepherd)
#:use-module (gnu packages password-utils)
#:use-module (gnu services)
#:use-module (gnu services configuration)
#:use-module (gnu services shepherd)
#:use-module (guix gexp)
#:use-module (srfi srfi-1)
#:export (wrap-himitsu-prompter
home-himitsu-configuration
home-himitsu-service-type
home-himitsu-ssh-configuration
home-himitsu-ssh-service-type
home-himitsu-secret-service-configuration
home-himitsu-secret-service-type))
;;
;; himitsu
;;
(define (wrap-himitsu-prompter prompter)
"Wraps a prompter to autodetect DISPLAY and WAYLAND_DISPLAY, necessary since
shepherd typically starts before a graphical session."
(program-file "himitsu-wrapped-prompter"
#~(begin (use-modules (ice-9 ftw) (ice-9 match) (srfi srfi-26))
(unless (or (getenv "DISPLAY") (getenv "WAYLAND_DISPLAY"))
(for-each (lambda (dir pat cont)
(match (scandir dir (cut regexp-exec pat <>) string<?)
((file . _) (cont file)) (_ #f)))
(list "/tmp/.X11-unix" (or (getenv "XDG_RUNTIME_DIR")
(string-append "/run/user/" (getuid))))
(map make-regexp '("^X[0-9]+$" "^wayland-[0-9]+$"))
(list (lambda (f)
(setenv "DISPLAY" (string-append ":" (string-drop f 1))))
(cut setenv "WAYLAND_DISPLAY" <>))))
(apply execl #$prompter #$prompter (cdr (command-line))))))
(define-maybe string (prefix himitsu-))
(define (string-or-gexp? s)
(or (string? s) (gexp? s)))
(define list-of-strings-or-gexps? (list-of string-or-gexp?))
(define (himitsu-serialize-string label val)
#~(format #f "~a=~a~%" '#$label #$val))
(define himitsu-serialize-file-like himitsu-serialize-string)
(define (himitsu-serialize-list-of-strings-or-gexps label vals)
#~(string-join (list #$@vals) "\n" 'suffix))
(define-configuration home-himitsu-configuration
(package (file-like himitsu) "himitsu package to use." empty-serializer)
(notify-reuse maybe-string "Command run to notify the user upon use of a
secret it was already authorized to use. Limited shell expansion available.")
(prompter (file-like (wrap-himitsu-prompter
(file-append hiprompt-gtk "/bin/hiprompt-gtk")))
"himitsu prompter to use to request user authorization for secret access.")
(extra-options (list-of-strings-or-gexps '()) "A list of extra options, one
per line, to put verbatim into the config file.")
(prefix himitsu-))
(define (himitsu-serialize config)
(mixed-text-file "himitsu.ini" "[himitsud]\n"
(serialize-configuration config home-himitsu-configuration-fields)))
(define (himitsu-shepherd-service config)
(define start
#~(lambda _
(let ((data (or (getenv "XDG_DATA_HOME")
(string-append user-homedir "/.local/share"))))
(if (directory-exists? (string-append data "/himitsu"))
(fork+exec-command
(list #$(let ((pkg (home-himitsu-configuration-package config)))
(file-append pkg "/bin/himitsud"))
"-C" #$(himitsu-serialize config))
#:log-file (string-append %user-log-dir "/himitsu.log"))
(error "Himitsu store must exist before the service can run! Try \
running 'himitsu-store -i' first?")))))
(list (shepherd-service
(documentation "Run the Himitsu secret service manager.")
(provision '(himitsud))
(modules (cons* '(shepherd support) %default-modules))
(start start)
(stop #~(make-kill-destructor)))))
;; we need to install the file or else himitsu-store will gen it
(define (himitsu-xdg-configuration-service config)
`(("himitsu/config.ini" ,(himitsu-serialize config))))
(define home-himitsu-service-type
(service-type
(name 'himitsu)
(extensions
(list (service-extension home-shepherd-service-type
himitsu-shepherd-service)
(service-extension home-xdg-configuration-files-service-type
himitsu-xdg-configuration-service)
(service-extension home-profile-service-type
(const (list himitsu)))))
(compose concatenate)
(extend (lambda (config exts)
(let ((opts (home-himitsu-configuration-extra-options config)))
(home-himitsu-configuration
(inherit config)
(extra-options (append exts opts))))))
(default-value (home-himitsu-configuration))
(description "Run the Himitsu secret storage manager upon login. You
should create the Himitsu database in advance.")))
;;
;; himitsu-ssh
;;
(define (remember-option? opt)
(or (number? opt) (memq opt '(session skip refuse))))
(define list-of-remember-options? (list-of remember-option?))
(define (himitsu-serialize-list-of-remember-options label val)
(himitsu-serialize-string label
(string-join (map (lambda (x) (cond ((number? x) (number->string x))
((symbol? x) (symbol->string x))))
val)
",")))
(define-configuration home-himitsu-ssh-configuration
(package (file-like himitsu-ssh) "himitsu-ssh package to use."
empty-serializer)
(persist (list-of-remember-options '(session 300 refuse)) "List of options
given when prompting to allow himitsu-ssh to see your keys. The option chosen
decides how long himitsu-ssh has this access. Options can be either 'session,
'refuse, 'skip, or a timeout in seconds. 'session means until the daemon
closes, 'refuse to decline and never ask again, and 'skip means to ask again
next use.")
(disclose (list-of-remember-options '(skip session 300)) "List of options
given when prompting to allow himitsu-ssh use of your keys. The format is the
same has persist.")
(prefix himitsu-))
(define (himitsu-ssh-shepherd-service config)
(let* ((package (home-himitsu-ssh-configuration-package config))
(binary (file-append package "/bin/hissh-agent")))
(list (shepherd-service
(documentation "Start the Himitsu ssh-agent implementation.")
(provision '(himitsu-ssh ssh-agent))
(requirement '(himitsud))
(start #~(make-forkexec-constructor (list #$binary)))
(stop #~(make-kill-destructor))))))
(define (himitsu-ssh-himitsu.ini config)
(list "[ssh.remember]"
(serialize-configuration config home-himitsu-ssh-configuration-fields)))
(define (himitsu-ssh-environment-variables _)
'(("SSH_AUTH_SOCK" . "${XDG_RUNTIME_DIR:-/run/user/$UID}/hissh-agent")))
(define home-himitsu-ssh-service-type
(service-type
(name 'himitsu-ssh)
(extensions (list (service-extension home-shepherd-service-type
himitsu-ssh-shepherd-service)
(service-extension home-himitsu-service-type
himitsu-ssh-himitsu.ini)
(service-extension home-environment-variables-service-type
himitsu-ssh-environment-variables)
(service-extension home-profile-service-type
(const (list himitsu-ssh)))))
(default-value (home-himitsu-ssh-configuration))
(description "Add support for ssh to store keys in Himitsu.")))
;;
;; himitsu-secret-service
;;
(define-configuration home-himitsu-secret-service-configuration
(package (file-like himitsu-secret-service) "himitsu-secret-service package to
use." empty-serializer)
(prefix himitsu-))
(define (himitsu-secret-service-shepherd-service config)
(let* ((package (home-himitsu-secret-service-configuration-package config))
(binary (file-append package "/bin/hisecrets-agent")))
(list (shepherd-service
(documentation "Start the Himitsu secret-service implementation.")
(provision '(himitsu-secret-service secret-service))
(requirement '(himitsud dbus))
(start #~(make-forkexec-constructor (list #$binary)))
(stop #~(make-kill-destructor))))))
(define home-himitsu-secret-service-type
(service-type
(name 'himitsu-secret-service)
(extensions
(list (service-extension home-shepherd-service-type
himitsu-secret-service-shepherd-service)))
(default-value (home-himitsu-secret-service-configuration))
(description "Add support to Himitsu for the freedesktop.org
secret-service protocol.")))
+5 -26
View File
@@ -2,7 +2,6 @@
;;; Copyright © 2021 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2025 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -122,9 +121,6 @@ service type can be extended with a list of file-like objects.")))
(define (serialize-posix-env-vars field-name val)
(environment-variable-shell-definitions val))
(define (serialize-shell-variables field value)
(shell-variable-definitions value))
;;;
;;; Zsh.
@@ -351,13 +347,6 @@ rules for the @code{home-environment-variables-service-type} apply
here (@pxref{Essential Home Services}). The contents of this field will be
added after the contents of the @code{bash-profile} field."
(serializer serialize-posix-env-vars))
(variables
(alist '())
"Bash variables (not to be confused with environment variables) to be set
in @file{.bashrc} for use by interactive shells. A typical example of such
variables is @code{HISTSIZE} and related history variables (@pxref{Bash
Variables,,, bash, Bash Reference Manual})."
(serializer serialize-shell-variables))
(aliases
(alist %default-bash-aliases)
"Association list of aliases to set for the Bash session. The aliases will be
@@ -436,12 +425,10 @@ if [ -f ~/.bashrc ]; then source ~/.bashrc; fi
,@(list (file-if-not-empty
'bashrc
(let ((user-settings (list (serialize-field 'variables) "\n"
(serialize-field 'aliases))))
(if (home-bash-configuration-guix-defaults? config)
(cons* (plain-file-content %default-bashrc) "\n"
user-settings)
user-settings)))
(if (home-bash-configuration-guix-defaults? config)
(list (plain-file-content %default-bashrc) "\n"
(serialize-field 'aliases))
(list (serialize-field 'aliases))))
(file-if-not-empty 'bash-logout)))))
(define (add-bash-packages config)
@@ -453,10 +440,6 @@ if [ -f ~/.bashrc ]; then source ~/.bashrc; fi
"Additional environment variables to set. These will be combined with the
environment variables from other extensions and the base service to form one
coherent block of environment variables.")
(variables
(alist '())
"Extra Bash variables (not to be confused with environment variables) to be
set in @file{.bashrc} for use by interactive shells.")
(aliases
(alist '())
"Additional aliases to set. These will be combined with the aliases from
@@ -476,17 +459,13 @@ with text blocks from other extensions and the base service."))
(define (home-bash-extensions original-config extension-configs)
(match-record original-config <home-bash-configuration>
(environment-variables variables aliases bash-profile bashrc bash-logout)
(environment-variables aliases bash-profile bashrc bash-logout)
(home-bash-configuration
(inherit original-config)
(environment-variables
(append environment-variables
(append-map
home-bash-extension-environment-variables extension-configs)))
(variables
(append variables
(append-map
home-bash-extension-variables extension-configs)))
(aliases
(append aliases
(append-map
+7 -6
View File
@@ -367,13 +367,14 @@ purposes."
'unknown)
((channels ...)
(map (lambda (channel)
;; NOTE: URL is not logged to synchronize the derivations
;; coming out of pre-inst-env, time-machine and Cuirass
;; for generating release artifacts.
`(channel ,(channel-name channel) ,(channel-commit channel)))
(let* ((uri (string->uri (channel-url channel)))
(url (if (or (not uri) (eq? 'file (uri-scheme uri)))
"local checkout"
(channel-url channel))))
`(channel ,(channel-name channel) ,url ,(channel-commit channel))))
channels))))
(define* (installer-program #:key dry-run? (guix-for-installer (current-guix)))
(define* (installer-program #:key dry-run?)
"Return a file-like object that runs the given INSTALLER."
(define init-gettext
;; Initialize gettext support, so that installer messages can be
@@ -422,7 +423,7 @@ purposes."
guile-gnutls
guile-zlib ;for (gnu build linux-modules)
guile-zstd ;for (gnu build linux-modules)
guix-for-installer)
(current-guix))
(with-imported-modules `(,@(source-module-closure
`(,@modules
(gnu services herd)
+3 -5
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2024,2026 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -168,10 +168,8 @@ or #f. Return #t on success and #f on failure."
(const '())))
(install-command (append `( "guix" "system" "init"
"--fallback"
,@(if (%current-target-system)
`(,(string-append
"--target="
(%current-target-system)))
,@(if (target-hurd?)
'("--target=i586-pc-gnu")
'()))
options
(list (%installer-configuration-file)
+2 -3
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,8 +27,7 @@
str)
(define (kernel->configuration kernel dry-run?)
(if (and (string? kernel)
(string-prefix? "Hurd" kernel))
(if (equal? kernel "Hurd")
`((kernel %hurd-default-operating-system-kernel)
,(comment (G_ ";; \"noide\" disables the gnumach IDE driver, enabling rumpdisk.\n"))
(kernel-arguments '("noide"))
+8 -33
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -23,48 +23,23 @@
#:export (run-kernel-page))
(define (run-kernel-page)
;; TRANSLATORS: "Hurd" is a proper noun and must not be translated.
(let* ((hurd-x86 (G_ "Hurd 32-bit (experimental)"))
(hurd-x86_64 (G_ "Hurd 64-bit (highly experimental!)"))
(linux-libre "Linux Libre")
(kernels (parameterize ((%current-target-system #f))
`(,linux-libre
,@(cond ((target-x86-64?)
(list hurd-x86 hurd-x86_64))
((target-x86?)
(list hurd-x86))
(else
'())))))
(default (cond ((equal? (%current-target-system) "i586-pc-gnu")
hurd-x86)
((equal? (%current-target-system) "x86_64-pc-gnu")
hurd-x86_64)
(else
linux-libre)))
(let* ((kernels `(,@(if (target-x86?) '("Hurd") '())
"Linux Libre"))
(result
(run-listbox-selection-page
#:title (G_ "Kernel")
#:info-text
;; TRANSLATORS: "Hurd" is a proper noun and must not be translated.
;; TRANSLATORS: "Linux Libre" is a literal and must not be translated.
(G_ "Please select a kernel. When in doubt, choose \"Linux Libre\".
The Hurd is offered as a technology preview and development aid; many packages \
are not yet available in Guix, such as a desktop environment or even a \
windowing system (X, Wayland).")
are not yet available in Guix, such as a desktop environment or even a windowing \
system (X, Wayland).")
#:listbox-items kernels
#:listbox-item->text identity
#:listbox-default-item default
#:sort-listbox-items? #f ;keep Linux first
#:listbox-default-item "Linux Libre"
#:button-text (G_ "Back")
#:button-callback-procedure
(lambda _
(abort-to-prompt 'installer-step 'abort)))))
(let ((target (cond ((equal? result hurd-x86)
"i586-pc-gnu")
((equal? result hurd-x86_64)
"x86_64-pc-gnu")
(else
#f))))
(%current-target-system target))
(when (equal? result "Hurd")
(%current-target-system "i586-pc-gnu"))
result))
+24 -78
View File
@@ -27,7 +27,6 @@
#:use-module (guix i18n)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-11)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 match)
@@ -113,41 +112,29 @@ network devices were found. Do you want to continue anyway?"))
full-value
(+ value 1)))))))
(define* (url-alive? url #:key (ensure-ok-status? #f))
(false-if-exception
(let ((response (http-request url)))
(or (not ensure-ok-status?)
(= (response-code response)
200)))))
(define* (common-urls-alive? urls #:key (ensure-ok-status? #f))
"Return #t if at least some of the given URLS are alive,
meaning that they do respond to a HTTP request. If ENSURE-OK-STATUS? is
#t, return #t only if the code is 200."
(dynamic-wind
(lambda ()
(sigaction SIGALRM
(lambda _ #f))
(alarm 3))
(lambda ()
(any (cut url-alive? <> #:ensure-ok-status? ensure-ok-status?)
urls))
(lambda ()
(alarm 0))))
(define (wait-service-online)
"Display a newt scale until connman detects an Internet access. Do
FULL-VALUE tentatives, spaced by 1 second."
(define (url-alive? url)
(false-if-exception
(= (response-code (http-request url))
200)))
(define (ci-available?)
(dynamic-wind
(lambda ()
(sigaction SIGALRM
(lambda _ #f))
(alarm 3))
(lambda ()
(or (url-alive? "https://bordeaux.guix.gnu.org")
(url-alive? "https://ci.guix.gnu.org")))
(lambda ()
(alarm 0))))
(define (online?)
(or (and (connman-online?)
(common-urls-alive?
(list
"https://bordeaux.guix.gnu.org"
"https://ci.guix.gnu.org"
"https://guix.gnu.org"
"https://gnu.org")
;; Any HTTP response means the users is online.
#:ensure-ok-status? #f))
(ci-available?))
(file-exists? "/tmp/installer-assume-online")))
(let* ((full-value 5))
@@ -162,48 +149,11 @@ FULL-VALUE tentatives, spaced by 1 second."
full-value
(+ value 1))))
(unless (online?)
(case (choice-window
(G_ "Internet access")
(G_ "Continue")
(G_ "Try again?")
(G_ "
The selected network does not seem to provide access to the \
Internet. The install process requires Internet access. \
Do you want to continue anyway?"))
((2) (abort-to-prompt 'installer-step 'abort))))))
(define (check-substitute-availability)
"Check that at least one of the Guix substitute servers is available."
(define (substitutes-available?)
(or
(file-exists? "/tmp/installer-assume-online")
(common-urls-alive?
(list
"https://bordeaux.guix.gnu.org/nix-cache-info"
"https://ci.guix.gnu.org/nix-cache-info")
#:ensure-ok-status? #t)))
(let* ((full-value 5))
(run-scale-page
#:title (G_ "Checking substitutes")
#:info-text (G_ "Checking if Guix substitutes are available...")
#:scale-full-value full-value
#:scale-update-proc
(lambda (value)
(sleep 1)
(if (substitutes-available?)
full-value
(+ value 1))))
(unless (substitutes-available?)
(case (choice-window
(G_ "Substitute availability")
(G_ "Continue")
(G_ "Try again?")
(G_ "
None of the Guix substitute servers are available.
You can proceed with the install, but you will
have to build most of the packages you install locally."))
((2) (abort-to-prompt 'installer-step 'abort))))))
(run-error-page
(G_ "The selected network does not provide access to the \
Internet and the Guix substitute server, please try again.")
(G_ "Connection error"))
(abort-to-prompt 'installer-step 'abort))))
(define (run-network-page)
"Run a page to allow the user to configure connman so that it can access the
@@ -242,11 +192,7 @@ Internet."
(installer-step
(id 'wait-online)
(compute (lambda _
(wait-service-online))))
(installer-step
(id 'check-substitutes)
(compute (lambda _
(check-substitute-availability))))))
(wait-service-online))))))
(run-installer-steps
#:steps network-steps
#:rewind-strategy 'start))
+13 -16
View File
@@ -108,23 +108,20 @@ all data on disk will be lost, are you sure you want to proceed?") item)
(define (run-label-page button-text button-callback)
"Run a page asking the user to select a partition table label."
;; Force the GPT label if UEFI is supported.
(cond ((efi-installation?)
((run-label-confirmation-page button-callback) "gpt"))
;; Force the MSDOS label on Hurd.
((target-hurd?)
((run-label-confirmation-page button-callback) "msdos"))
(else (run-listbox-selection-page
#:info-text (G_ "Select a new partition table type. \
;; Force the GPT label if UEFI is supported.
(if (efi-installation?)
((run-label-confirmation-page button-callback) "gpt")
(run-listbox-selection-page
#:info-text (G_ "Select a new partition table type. \
Be careful, all data on the disk will be lost.")
#:title (G_ "Partition table")
#:listbox-items '("msdos" "gpt")
#:listbox-default-item (if (target-hurd?) "msdos" "gpt")
#:listbox-item->text identity
#:listbox-callback-procedure
(run-label-confirmation-page button-callback)
#:button-text button-text
#:button-callback-procedure button-callback))))
#:title (G_ "Partition table")
#:listbox-items '("msdos" "gpt")
#:listbox-default-item (if (target-hurd?) "msdos" "gpt")
#:listbox-item->text identity
#:listbox-callback-procedure
(run-label-confirmation-page button-callback)
#:button-text button-text
#:button-callback-procedure button-callback)))
(define (run-type-page partition)
"Run a page asking the user to select a partition type."
+5 -13
View File
@@ -36,9 +36,11 @@
environments."
(let ((items (filter desktop-system-service? (%system-services))))
(run-checkbox-tree-page
#:info-text (G_ "Please select the desktop environment(s) you wish to \
#:info-text (if (target-hurd?)
(G_ "Currently, none of these is available for the Hurd.")
(G_ "Please select the desktop environment(s) you wish to \
install. If you select multiple desktop environments here, you will be able \
to choose from them later when you log in.")
to choose from them later when you log in."))
#:title (G_ "Desktop environment")
#:items items
#:selection (map system-service-recommended? items)
@@ -48,16 +50,6 @@ to choose from them later when you log in.")
(lambda ()
(abort-to-prompt 'installer-step 'abort)))))
;; FIXME: all platforms should support %desktop-services and some of the
;; offered desktop environments. Instead of globally disabling the desktop
;; page, disable only non-working desktop environments.
(define (run-desktop-environments-cbt-page/maybe)
"Run page with desktop environments, as long as the user is on
a system that supports them."
(if (or (target-hurd?) (target-x86-32?))
'()
(run-desktop-environments-cbt-page)))
(define (run-networking-cbt-page)
"Run a page allowing the user to select networking services."
(let ((items (filter (lambda (service)
@@ -139,7 +131,7 @@ client may be enough for a server.")
(abort-to-prompt 'installer-step 'abort)))))
(define (run-services-page)
(let ((desktop (run-desktop-environments-cbt-page/maybe)))
(let ((desktop (run-desktop-environments-cbt-page)))
;; When the user did not select any desktop services, and thus didn't get
;; '%desktop-services', offer network management services.
(append desktop
+2 -15
View File
@@ -5,8 +5,6 @@
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2023 Denys Nykula <vegan@libre.net.ua>
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2025 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -82,9 +80,6 @@
(desktop-environment
(name "MATE")
(snippet '((service mate-desktop-service-type))))
(desktop-environment
(name "KDE Plasma")
(snippet '((service plasma-desktop-service-type))))
(desktop-environment
(name "Icewm")
(packages '((specification->package "icewm"))))
@@ -108,11 +103,6 @@
(packages '((specification->package "emacs")
(specification->package "emacs-exwm")
(specification->package "emacs-desktop-environment"))))
(desktop-environment
(name "Sway")
(packages (map (lambda (package)
`(specification->package ,package))
'("sway" "wmenu" "foot"))))
;; Networking.
(system-service
@@ -204,11 +194,8 @@
(if (target-hurd?)
'%base-services/hurd
'%base-services)))
(native-console-font (match (false-if-exception
(string-take (getenv "LANGUAGE") 2))
((or "el" ;easier with more complete Greek font
;; These need Cyrillic:
"be" "bg" "kk" "ky"
(native-console-font (match (getenv "LANGUAGE")
((or "be" "bg" "el" "eo" "kk" "ky"
"mk" "mn" "ru" "sr" "tg" "uk")
"LatGrkCyr-8x16")
(_ #f)))
+44 -85
View File
@@ -72,8 +72,6 @@
# Copyright © 2024 Ashvith Shetty <ashvithshetty10@gmail.com>
# Copyright © 2024 James Smith <jsubuntuxp@disroot.org>
# Copyright © 2025 Nigko Yerden <nigko.yerden@gmail.com>
# Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
# Copyright © 2025 bdunahu <bdunahu@operationnull.com>
#
# This file is part of GNU Guix.
#
@@ -113,7 +111,6 @@ GNU_SYSTEM_MODULES = \
%D%/home/services/dotfiles.scm \
%D%/home/services/symlink-manager.scm \
%D%/home/services/fontutils.scm \
%D%/home/services/gnome.scm \
%D%/home/services/gnupg.scm \
%D%/home/services/guix.scm \
%D%/home/services/mail.scm \
@@ -123,7 +120,6 @@ GNU_SYSTEM_MODULES = \
%D%/home/services/music.scm \
%D%/home/services/niri.scm \
%D%/home/services/pm.scm \
%D%/home/services/secrets.scm \
%D%/home/services/shells.scm \
%D%/home/services/shepherd.scm \
%D%/home/services/sound.scm \
@@ -190,6 +186,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/calcurse.scm \
%D%/packages/ccache.scm \
%D%/packages/cdrom.scm \
%D%/packages/cedille.scm \
%D%/packages/certs.scm \
%D%/packages/check.scm \
%D%/packages/chemistry.scm \
@@ -256,7 +253,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/docker.scm \
%D%/packages/documentation.scm \
%D%/packages/dpdk.scm \
%D%/packages/duckdb.scm \
%D%/packages/dvtm.scm \
%D%/packages/easyrpg.scm \
%D%/packages/ebook.scm \
@@ -302,12 +298,15 @@ GNU_SYSTEM_MODULES = \
%D%/packages/fortran-xyz.scm \
%D%/packages/freedesktop.scm \
%D%/packages/freeipmi.scm \
%D%/packages/fsf.scm \
%D%/packages/ftp.scm \
%D%/packages/fribidi.scm \
%D%/packages/fvwm.scm \
%D%/packages/gambas.scm \
%D%/packages/game-development.scm \
%D%/packages/games.scm \
%D%/packages/gawk.scm \
%D%/packages/gcal.scm \
%D%/packages/gcc.scm \
%D%/packages/gd.scm \
%D%/packages/gdb.scm \
@@ -358,8 +357,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gxmessage.scm \
%D%/packages/hardware.scm \
%D%/packages/hare.scm \
%D%/packages/hare-apps.scm \
%D%/packages/hare-xyz.scm \
%D%/packages/haskell.scm \
%D%/packages/haskell-apps.scm \
%D%/packages/haskell-check.scm \
@@ -550,7 +547,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/php.scm \
%D%/packages/php-xyz.scm \
%D%/packages/piet.scm \
%D%/packages/diagram.scm \
%D%/packages/pikchr.scm \
%D%/packages/pkg-config.scm \
%D%/packages/plan9.scm \
%D%/packages/plotutils.scm \
@@ -613,6 +610,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/rust-sources.scm \
%D%/packages/samba.scm \
%D%/packages/sagemath.scm \
%D%/packages/sawfish.scm \
%D%/packages/scanner.scm \
%D%/packages/scheme.scm \
%D%/packages/spreadsheet.scm \
@@ -651,7 +649,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/storage.scm \
%D%/packages/suckless.scm \
%D%/packages/sugar.scm \
%D%/packages/swift.scm \
%D%/packages/swig.scm \
%D%/packages/sycl.scm \
%D%/packages/sync.scm \
@@ -686,7 +683,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/upnp.scm \
%D%/packages/usb-modeswitch.scm \
%D%/packages/uucp.scm \
%D%/packages/oneapi.scm \
%D%/packages/valgrind.scm \
%D%/packages/version-control.scm \
%D%/packages/video.scm \
@@ -697,6 +693,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/vpn.scm \
%D%/packages/vulkan.scm \
%D%/packages/w3m.scm \
%D%/packages/wdiff.scm \
%D%/packages/weather.scm \
%D%/packages/web.scm \
%D%/packages/web-browsers.scm \
@@ -990,7 +987,6 @@ dist_patch_DATA = \
%D%/packages/patches/akonadi-not-relocatable.patch \
%D%/packages/patches/akonadi-timestamps.patch \
%D%/packages/patches/alure-dumb-2.patch \
%D%/packages/patches/amd-smi-python.patch \
%D%/packages/patches/ibus-anthy-fix-tests.patch \
%D%/packages/patches/ibus-table-paths.patch \
%D%/packages/patches/anki-mpv-args.patch \
@@ -1079,9 +1075,9 @@ dist_patch_DATA = \
%D%/packages/patches/calls-disable-application-test.patch \
%D%/packages/patches/calls-disable-sip-test.patch \
%D%/packages/patches/camlboot-dynamically-allocate-stack-signal.patch \
%D%/packages/patches/capnproto-fix-test.patch \
%D%/packages/patches/capstone-fix-python-constants.patch \
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
%D%/packages/patches/chez-irregex-import-cond-expand.patch \
%D%/packages/patches/chez-scheme-bin-sh.patch \
%D%/packages/patches/circos-remove-findbin.patch \
%D%/packages/patches/cdparanoia-fpic.patch \
@@ -1105,7 +1101,6 @@ dist_patch_DATA = \
%D%/packages/patches/clang-16-remove-crypt-interceptors.patch \
%D%/packages/patches/clang-17.0-libc-search-path.patch \
%D%/packages/patches/clang-17.0-link-dsymutil-latomic.patch \
%D%/packages/patches/clang-17.0-fix-build-with-gcc-14-on-arm.patch \
%D%/packages/patches/clang-18.0-libc-search-path.patch \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/clang-runtime-12-remove-crypt-interceptors.patch \
@@ -1144,7 +1139,6 @@ dist_patch_DATA = \
%D%/packages/patches/clucene-contribs-lib.patch \
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
%D%/packages/patches/ctranslate2-local-build.patch \
%D%/packages/patches/ctune-cmake-disable-git-clone.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cups-relax-root-ownership-check.patch \
%D%/packages/patches/cura-engine-gcc-14.patch \
@@ -1168,6 +1162,7 @@ dist_patch_DATA = \
%D%/packages/patches/dbus-helper-search-path.patch \
%D%/packages/patches/dbus-c++-gcc-compat.patch \
%D%/packages/patches/dbus-c++-threading-mutex.patch \
%D%/packages/patches/dbxfs-remove-sentry-sdk.patch \
%D%/packages/patches/ddd-build.patch \
%D%/packages/patches/debops-setup-py-avoid-git.patch \
%D%/packages/patches/dee-vapi.patch \
@@ -1175,7 +1170,6 @@ dist_patch_DATA = \
%D%/packages/patches/dhclient-script-resolvconf-support.patch \
%D%/packages/patches/dicedb-remove-init-from-config-subpkg.patch \
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
%D%/packages/patches/django-compressor-build-with-beautifulsoup-4.14+.patch \
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
%D%/packages/patches/doc++-gcc-14.patch \
%D%/packages/patches/docbook-utils-documentation-edits.patch \
@@ -1202,14 +1196,12 @@ dist_patch_DATA = \
%D%/packages/patches/duc-fix-test-sh.patch \
%D%/packages/patches/dune-common-skip-failing-tests.patch \
%D%/packages/patches/durden-shadow-arcan.patch \
%D%/packages/patches/dvdbackup-with-libdvdread-6.1.0+.patch \
%D%/packages/patches/dvd+rw-tools-add-include.patch \
%D%/packages/patches/dwarves-threading-reproducibility.patch \
%D%/packages/patches/efivar-fix-fprint-format.patch \
%D%/packages/patches/eigen-fix-strict-aliasing-bug.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
%D%/packages/patches/elixir-httpoison-tag-network-dependent-test-cases.patch \
%D%/packages/patches/elixir-path-length.patch \
%D%/packages/patches/elm-ghc9.2.patch \
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
@@ -1218,7 +1210,6 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-disable-jit-compilation.patch \
%D%/packages/patches/emacs-elisp-autofmt-fix-region-send.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
%D%/packages/patches/emacs-gnus-alias-reference-signature.patch \
@@ -1249,18 +1240,16 @@ dist_patch_DATA = \
%D%/packages/patches/ergodox-firmware-fix-numpad.patch \
%D%/packages/patches/ericw-tools-add-check-for-sse2-in-light.cc.patch \
%D%/packages/patches/ericw-tools-gcc-11-pass-const-to-offsetof.patch \
%D%/packages/patches/erlang-binpp-disable-failing-tests.patch \
%D%/packages/patches/erlang-man-path.patch \
%D%/packages/patches/erlang-mochiweb-disable-known-to-fail-tests.patch \
%D%/packages/patches/esmini-use-pkgconfig.patch \
%D%/packages/patches/esmtp-add-lesmtp.patch \
%D%/packages/patches/esound-c99.patch \
%D%/packages/patches/exercism-disable-self-update.patch \
%D%/packages/patches/extempore-unbundle-external-dependencies.patch \
%D%/packages/patches/extundelete-e2fsprogs-1.44.patch \
%D%/packages/patches/fail2ban-fix-sshd-filter.patch \
%D%/packages/patches/fail2ban-paths-guix-conf.patch \
%D%/packages/patches/faiss-tests-CMakeLists-find-googletest.patch \
%D%/packages/patches/falcosecurity-libs-bpf-probes-fix.patch \
%D%/packages/patches/falcosecurity-libs-shared-build.patch \
%D%/packages/patches/farstream-gupnp.patch \
%D%/packages/patches/farstream-make.patch \
@@ -1290,8 +1279,6 @@ dist_patch_DATA = \
%D%/packages/patches/ffmpeg-jami-remove-mjpeg-log.patch \
%D%/packages/patches/ffmpeg-jami-screen-sharing-x11-fix.patch \
%D%/packages/patches/ffmpeg-4-binutils-2.41.patch \
%D%/packages/patches/ffmpeg-svt-av1-v3.patch \
%D%/packages/patches/fgallery-also-look-for-7z.patch \
%D%/packages/patches/fifengine-boost-compat.patch \
%D%/packages/patches/fifengine-python-3.9-compat.patch \
%D%/packages/patches/fifengine-swig-compat.patch \
@@ -1318,8 +1305,6 @@ dist_patch_DATA = \
%D%/packages/patches/fp16-system-libraries.patch \
%D%/packages/patches/fpc-reproducibility.patch \
%D%/packages/patches/fpc-glibc-2.34-compat.patch \
%D%/packages/patches/fritzing-0.9.6-fix-types.patch \
%D%/packages/patches/freedink-engine-fix-const-char.patch \
%D%/packages/patches/freedict-tools-fix-determinism.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeimage-libtiff-compat.patch \
@@ -1327,6 +1312,7 @@ dist_patch_DATA = \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/freeimage-CVE-2020-21428.patch \
%D%/packages/patches/freeimage-CVE-2020-22524.patch \
%D%/packages/patches/freerdp-3.16.0-rpath.patch \
%D%/packages/patches/freesolid-automake.patch \
%D%/packages/patches/freesolid-autotools.patch \
%D%/packages/patches/freesolid-configure.patch \
@@ -1445,51 +1431,56 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/gimp-fix-metadata-editor.patch \
%D%/packages/patches/gimp-fix-tiff-load.patch \
%D%/packages/patches/git-clar-path-max.patch \
%D%/packages/patches/git-filter-repo-generate-doc.patch \
%D%/packages/patches/gklib-suitesparse.patch \
%D%/packages/patches/glib-appinfo-watch.patch \
%D%/packages/patches/glib-skip-failing-test.patch \
%D%/packages/patches/glibc-2.33-riscv64-miscompilation.patch \
%D%/packages/patches/glibc-2.35-CVE-2023-4911.patch \
%D%/packages/patches/glibc-2.37-hurd-clock_t_centiseconds.patch \
%D%/packages/patches/glibc-2.37-versioned-locpath.patch \
%D%/packages/patches/glibc-2.38-ldd-x86_64.patch \
%D%/packages/patches/glibc-2.39-git-updates.patch \
%D%/packages/patches/glibc-2.40-dl-cache.patch \
%D%/packages/patches/glibc-2.41-bootstrap-system.patch \
%D%/packages/patches/glibc-2.41-hurd-local-clock_gettime_MONOTONIC.patch \
%D%/packages/patches/glibc-2.41-ldd-x86_64.patch \
%D%/packages/patches/glibc-CVE-2019-7309.patch \
%D%/packages/patches/glibc-CVE-2019-9169.patch \
%D%/packages/patches/glibc-CVE-2019-19126.patch \
%D%/packages/patches/glibc-2.35-CVE-2023-4911.patch \
%D%/packages/patches/glibc-allow-kernel-2.6.32.patch \
%D%/packages/patches/glibc-boot-2.2.5.patch \
%D%/packages/patches/glibc-boot-2.16.0.patch \
%D%/packages/patches/glibc-boot-2.2.5.patch \
%D%/packages/patches/glibc-bootstrap-system-2.2.5.patch \
%D%/packages/patches/glibc-bootstrap-system-2.16.0.patch \
%D%/packages/patches/glibc-bootstrap-system.patch \
%D%/packages/patches/glibc-2.41-bootstrap-system.patch \
%D%/packages/patches/glibc-cross-objcopy.patch \
%D%/packages/patches/glibc-cross-objdump.patch \
%D%/packages/patches/glibc-dl-cache.patch \
%D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \
%D%/packages/patches/glibc-hurd-clock_gettime_monotonic.patch \
%D%/packages/patches/glibc-2.31-hurd-clock_gettime_monotonic.patch \
%D%/packages/patches/glibc-2.37-hurd-clock_t_centiseconds.patch \
%D%/packages/patches/glibc-2.41-hurd-local-clock_gettime_MONOTONIC.patch \
%D%/packages/patches/glibc-2.37-versioned-locpath.patch \
%D%/packages/patches/glibc-2.38-ldd-x86_64.patch \
%D%/packages/patches/glibc-2.41-ldd-x86_64.patch \
%D%/packages/patches/glibc-hurd-clock_t_centiseconds.patch \
%D%/packages/patches/glibc-hurd-getauxval.patch \
%D%/packages/patches/glibc-hurd-gettyent.patch \
%D%/packages/patches/glibc-hurd-mach-print.patch \
%D%/packages/patches/glibc-hurd-pthread_setcancelstate.patch \
%D%/packages/patches/glibc-hurd-signal-fpe-exception.patch \
%D%/packages/patches/glibc-hurd-signal-sa-siginfo.patch \
%D%/packages/patches/glibc-hurd-2.41-pthread-once.patch \
%D%/packages/patches/glibc-hurd-2.41-pthread-sigmask.patch \
%D%/packages/patches/glibc-hurd-2.41-symlink.patch \
%D%/packages/patches/glibc-hurd-xstate.patch \
%D%/packages/patches/glibc-hurd64-gcc-14.2-tls-bug.patch \
%D%/packages/patches/glibc-hurd64-intr-msg-clobber.patch \
%D%/packages/patches/glibc-ldd-powerpc.patch \
%D%/packages/patches/glibc-ldd-x86_64.patch \
%D%/packages/patches/glibc-locales.patch \
%D%/packages/patches/glibc-locales-2.28.patch \
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
%D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/glibc-skip-c++.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glibc-2.29-git-updates.patch \
%D%/packages/patches/glibc-2.29-supported-locales.patch \
%D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/gmime-disable-tests.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
@@ -1503,7 +1494,6 @@ dist_patch_DATA = \
%D%/packages/patches/gnome-session-support-elogind.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnulib-bootstrap.patch \
%D%/packages/patches/gnumach-div0.patch \
%D%/packages/patches/gnumach-version.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \
@@ -1530,6 +1520,7 @@ dist_patch_DATA = \
%D%/packages/patches/grantlee-register-metaenumvariable.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \
%D%/packages/patches/grfcodec-gcc-compat.patch \
%D%/packages/patches/gromacs-tinyxml2.patch \
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
%D%/packages/patches/grub-efi-fat-serial-number.patch \
%D%/packages/patches/grub-hurd64.patch \
@@ -1592,17 +1583,16 @@ dist_patch_DATA = \
%D%/packages/patches/highlight-gui-data-dir.patch \
%D%/packages/patches/hplip-usb-timeout.patch \
%D%/packages/patches/http-parser-CVE-2020-8287.patch \
%D%/packages/patches/htslib-for-stringtie.patch \
%D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hueplusplus-mbedtls.patch \
%D%/packages/patches/hugs-fix-build.patch \
%D%/packages/patches/hurd-refcounts-assert.patch \
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
%D%/packages/patches/hurd-socket-activation.patch \
%D%/packages/patches/hurd-startup.patch \
%D%/packages/patches/hurd-proc-zombies.patch \
%D%/packages/patches/hwloc-1-test-btrfs.patch \
%D%/packages/patches/i3lock-blur-fix-build-on-gcc-10.patch \
%D%/packages/patches/i7z-gcc-10.patch \
%D%/packages/patches/icecat-adjust-mozilla-desktop.patch \
%D%/packages/patches/icecat-makeicecat.patch \
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
%D%/packages/patches/icecat-compare-paths.patch \
@@ -1629,6 +1619,7 @@ dist_patch_DATA = \
%D%/packages/patches/irrlicht-link-against-needed-libs.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/ispell-for-linphone-cmake.patch \
%D%/packages/patches/jamesdsp-fix-bulid-on-pipewire-1.4.0.patch\
%D%/packages/patches/jami-find-package-avutil.patch \
%D%/packages/patches/jami-libjami-headers-search.patch \
%D%/packages/patches/jami-qwindowkit.patch \
@@ -1660,9 +1651,8 @@ dist_patch_DATA = \
%D%/packages/patches/jfsutils-gcc-compat.patch \
%D%/packages/patches/jfsutils-include-systypes.patch \
%D%/packages/patches/john-the-ripper-jumbo-with-gcc-11.patch \
%D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \
%D%/packages/patches/json-c-0.13-CVE-2020-12762.patch \
%D%/packages/patches/jsonnet-include-cstdint-for-gcc-13-builds.patch \
%D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \
%D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \
%D%/packages/patches/julia-Use-MPFR-4.2.patch \
%D%/packages/patches/komikku-python-3.11-compat.patch \
@@ -1685,7 +1675,6 @@ dist_patch_DATA = \
%D%/packages/patches/libretro-dolphin-emu-libusb-assert.patch \
%D%/packages/patches/libretro-dolphin-emu-vulkan-headers.patch \
%D%/packages/patches/librewolf-add-store-to-rdd-allowlist.patch \
%D%/packages/patches/librewolf-compare-paths.patch \
%D%/packages/patches/librewolf-neuter-locale-download.patch \
%D%/packages/patches/librewolf-use-system-wide-dir.patch \
%D%/packages/patches/libvirt-add-install-prefix.patch \
@@ -1696,8 +1685,6 @@ dist_patch_DATA = \
%D%/packages/patches/lightdm-vnc-ipv6.patch \
%D%/packages/patches/lightdm-vnc-color-depth.patch \
%D%/packages/patches/lightdm-vncserver-check.patch \
%D%/packages/patches/linphone-desktop-cmake-belcard.patch \
%D%/packages/patches/linphone-desktop-cmake-find-modules.patch \
%D%/packages/patches/localed-xorg-keyboard.patch \
%D%/packages/patches/kaldi-ignore-failing-test.patch \
%D%/packages/patches/kaldi-openblas-0.3.29-compatibility.patch \
@@ -1711,7 +1698,6 @@ dist_patch_DATA = \
%D%/packages/patches/kinit-kdeinit-extra_libs.patch \
%D%/packages/patches/kio-search-smbd-on-PATH.patch \
%D%/packages/patches/kismet-unbundle-boost.patch \
%D%/packages/patches/kissfft-tflite-micro.patch \
%D%/packages/patches/kitty-fix-wayland-protocols.patch \
%D%/packages/patches/kmod-module-directory.patch \
%D%/packages/patches/kmscon-runtime-keymap-switch.patch \
@@ -1740,7 +1726,6 @@ dist_patch_DATA = \
%D%/packages/patches/libbraiding-no-s.patch \
%D%/packages/patches/libcaca-CVE-2021-3410-pt1.patch \
%D%/packages/patches/libcaca-CVE-2021-3410-pt2.patch \
%D%/packages/patches/libcap-magic-glibc-constant.patch \
%D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \
%D%/packages/patches/libcanberra-wayland-crash.patch \
%D%/packages/patches/libcroco-CVE-2020-12825.patch \
@@ -1826,6 +1811,7 @@ dist_patch_DATA = \
%D%/packages/patches/lirc-reproducible-build.patch \
%D%/packages/patches/llvm-13-gcc-14.patch \
%D%/packages/patches/lm-sensors-hwmon-attrs.patch \
%D%/packages/patches/lsh-fix-x11-forwarding.patch \
%D%/packages/patches/lsof-compat-linux-6.9.patch \
%D%/packages/patches/lsof-fatal-test-failures.patch \
%D%/packages/patches/lua-CVE-2014-5461.patch \
@@ -1854,7 +1840,6 @@ dist_patch_DATA = \
%D%/packages/patches/maxima-defsystem-mkdir.patch \
%D%/packages/patches/maven-generate-component-xml.patch \
%D%/packages/patches/maven-generate-javax-inject-named.patch \
%D%/packages/patches/mc2mt-add-packaging-support.patch \
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \
@@ -1887,7 +1872,6 @@ dist_patch_DATA = \
%D%/packages/patches/mpg321-CVE-2019-14247.patch \
%D%/packages/patches/mpg321-gcc-10.patch \
%D%/packages/patches/mpv-0.40.0-fix-ffmpeg-8.0.patch \
%D%/packages/patches/mpv-0.40.0-fix-wayland-cpu-usage.patch \
%D%/packages/patches/modglue-fix-build.patch \
%D%/packages/patches/modem-manager-fix-test-wrapper.patch \
%D%/packages/patches/module-init-tools-moduledir.patch \
@@ -1953,7 +1937,6 @@ dist_patch_DATA = \
%D%/packages/patches/nss-3.115-disable-broken-tests.patch \
%D%/packages/patches/nss-3.115-disable-pkix-ocsp-tests.patch \
%D%/packages/patches/ntp-fix-dereferencing-the-wrong-variable.patch \
%D%/packages/patches/nvi-add-function-prototypes.patch \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
@@ -1966,7 +1949,6 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-4.09-multiple-definitions.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/oneko-remove-nonfree-characters.patch \
%D%/packages/patches/onetbb-other-arches.patch \
%D%/packages/patches/online-judge-tools.patch \
%D%/packages/patches/onnx-optimizer-system-library.patch \
%D%/packages/patches/onnx-1.13.1-use-system-googletest.patch \
@@ -2023,10 +2005,14 @@ dist_patch_DATA = \
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
%D%/packages/patches/ots-no-include-missing-file.patch \
%D%/packages/patches/owncloud-disable-updatecheck.patch \
%D%/packages/patches/p7zip-CVE-2016-9296.patch \
%D%/packages/patches/p7zip-CVE-2017-17969.patch \
%D%/packages/patches/pnet-fix-line-number-info.patch \
%D%/packages/patches/pnet-fix-off-by-one.patch \
%D%/packages/patches/pnet-newer-libgc-fix.patch \
%D%/packages/patches/pnet-newer-texinfo-fix.patch \
%D%/packages/patches/p7zip-fix-build-with-gcc-11.patch \
%D%/packages/patches/p7zip-remove-unused-code.patch \
%D%/packages/patches/pam-krb5-CVE-2020-10595.patch \
%D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/password-store-tree-compat.patch \
@@ -2058,18 +2044,15 @@ dist_patch_DATA = \
%D%/packages/patches/python-clarabel-blas.patch \
%D%/packages/patches/python-docrepr-fix-tests.patch \
%D%/packages/patches/python-feedparser-missing-import.patch \
%D%/packages/patches/python-gpg-setup-72.patch \
%D%/packages/patches/python-hdmedians-replace-nose.patch \
%D%/packages/patches/python-louvain-fix-test.patch \
%D%/packages/patches/python-matplotlib-fix-legend-loc-best-test.patch \
%D%/packages/patches/python-mohawk-pytest.patch \
%D%/packages/patches/python-msal-requests.patch \
%D%/packages/patches/python-norns-nose.patch \
%D%/packages/patches/python-numpy-gcc-14.patch \
%D%/packages/patches/python-random2-getrandbits-test.patch \
%D%/packages/patches/python-pillow-use-zlib-1.3.patch \
%D%/packages/patches/python-pydocstyle-add-support-for-pep701.patch \
%D%/packages/patches/python-pypytools-python-3-fixes.patch \
%D%/packages/patches/python-pyreadstat-link-libiconv.patch \
%D%/packages/patches/python-sip-include-dirs.patch \
%D%/packages/patches/python-scikit-build-setuptools-compat.patch \
@@ -2083,7 +2066,6 @@ dist_patch_DATA = \
%D%/packages/patches/qtdeclarative-5-disable-qmlcache.patch \
%D%/packages/patches/qtdeclarative-disable-qmlcache.patch \
%D%/packages/patches/qtlocation-5.15.8-mapboxgl-gcc13.patch \
%D%/packages/patches/qtwebengine-revert-egl.patch \
%D%/packages/patches/quodlibet-disable-bundled-packages.patch \
%D%/packages/patches/qxlsx-fix-include-directory.patch \
%D%/packages/patches/schiffbruch-fix-build-for-gcc-13.patch \
@@ -2098,7 +2080,6 @@ dist_patch_DATA = \
%D%/packages/patches/smalltalk-multiplication-overflow.patch \
%D%/packages/patches/soci-mysql-ddl-types.patch \
%D%/packages/patches/sqlite-hurd.patch \
%D%/packages/patches/squeak-vm-gcc-14-fix.patch \
%D%/packages/patches/stepmania-ffmpeg-compat.patch \
%D%/packages/patches/stk-5.0.1-fix-typo.patch \
%D%/packages/patches/strace-readlink-tests.patch \
@@ -2110,7 +2091,6 @@ dist_patch_DATA = \
%D%/packages/patches/perl-5.14-no-sys-dirs.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \
%D%/packages/patches/perl-class-methodmaker-reproducible.patch \
%D%/packages/patches/perl-crypt-des-implicit-func-decl.patch \
%D%/packages/patches/perl-image-exiftool-CVE-2021-22204.patch \
%D%/packages/patches/perl-net-amazon-s3-moose-warning.patch \
%D%/packages/patches/perl-net-dns-resolver-programmable-fix.patch \
@@ -2180,6 +2160,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-3-reproducible-build.patch \
%D%/packages/patches/python-cross-compile.patch \
%D%/packages/patches/python-colour-remove-d2to1.patch \
%D%/packages/patches/python-configobj-setuptools.patch \
%D%/packages/patches/python-debugpy-unbundle-pydevd.patch \
%D%/packages/patches/python-docopt-pytest6-compat.patch \
%D%/packages/patches/python-fixtures-remove-monkeypatch-test.patch \
@@ -2199,7 +2180,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-pytorch-fix-codegen.patch \
%D%/packages/patches/python-pytorch-for-r-torch-fix-codegen.patch \
%D%/packages/patches/python-pytorch-for-r-torch-system-libraries.patch \
%D%/packages/patches/python-pytorch-for-r-torch-without-kineto.patch \
%D%/packages/patches/python-pytorch-runpath.patch \
%D%/packages/patches/python-pytorch-system-libraries.patch \
%D%/packages/patches/python-pytorch-without-kineto.patch \
@@ -2217,26 +2197,24 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-glibc-2.30.patch \
%D%/packages/patches/qemu-fix-agent-paths.patch \
%D%/packages/patches/qemu-fix-test-virtio-version.patch \
%D%/packages/patches/qemu-disable-aarch64-migration-test.patch \
%D%/packages/patches/qrcodegen-cpp-cmake.patch \
%D%/packages/patches/qtbase-absolute-runpath.patch \
%D%/packages/patches/qtbase-qmake-fix-includedir.patch \
%D%/packages/patches/qtbase-qmlimportscanner-qml-import-path.patch \
%D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \
%D%/packages/patches/qtbase-patch-libvulkan.patch \
%D%/packages/patches/qtbase-qmake-use-libname.patch \
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/quilt-grep-compat.patch \
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
%D%/packages/patches/qtwayland-dont-recreate-callbacks.patch \
%D%/packages/patches/qtwayland-cleanup-callbacks.patch \
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
%D%/packages/patches/qtwebengine-fix-dependencies.patch \
%D%/packages/patches/qtwebsockets-6.9-fix-tst_QWebSocket.patch\
%D%/packages/patches/rabbitmq-defaults.patch \
%D%/packages/patches/radare2-fix-meson-build-to-use-sys-qjs.patch \
%D%/packages/patches/radare2-fix-meson-build-to-use-sys-sdb.patch \
%D%/packages/patches/ragel-char-signedness.patch \
%D%/packages/patches/randomjungle-disable-static-build.patch \
%D%/packages/patches/rapidcheck-fix-libs.patch \
@@ -2244,8 +2222,8 @@ dist_patch_DATA = \
%D%/packages/patches/retroarch-unbundle-spirv-cross.patch \
%D%/packages/patches/rct-add-missing-headers.patch \
%D%/packages/patches/readline-link-ncurses.patch \
%D%/packages/patches/renpy-python-3.11-compat.patch \
%D%/packages/patches/renpy-fix-integer-slots.patch \
%D%/packages/patches/readline-6.2-CVE-2014-2524.patch \
%D%/packages/patches/renpy-use-system-fribidi.patch \
%D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \
%D%/packages/patches/rdkit-unbundle-external-dependencies.patch \
%D%/packages/patches/r-httpuv-1.6.6-unvendor-libuv.patch \
@@ -2264,13 +2242,11 @@ dist_patch_DATA = \
%D%/packages/patches/remake-impure-dirs.patch \
%D%/packages/patches/restartd-update-robust.patch \
%D%/packages/patches/restic-0.9.6-fix-tests-for-go1.15.patch \
%D%/packages/patches/rlwrap-no-rbgen.patch \
%D%/packages/patches/rng-tools-revert-build-randstat.patch \
%D%/packages/patches/rocclr-5.6.0-enable-gfx800.patch \
%D%/packages/patches/rocm-opencl-runtime-4.3-noclinfo.patch \
%D%/packages/patches/rottlog-direntry.patch \
%D%/packages/patches/ruby-actionpack-remove-browser-tests.patch \
%D%/packages/patches/ruby-activesupport-fix-deprecation-warning.patch \
%D%/packages/patches/ruby-asciidoctor-pdf-support-prawn-svg-0_36.patch \
%D%/packages/patches/ruby-chunky-png-ruby-3-2-support.patch \
%D%/packages/patches/ruby-hiredis-use-system-hiredis.patch \
@@ -2291,6 +2267,7 @@ dist_patch_DATA = \
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
%D%/packages/patches/s7-flint-3.patch \
%D%/packages/patches/safeint-disable-tests.patch \
%D%/packages/patches/sage-safeguard-sage-getargspec-cython.patch \
%D%/packages/patches/sajson-for-gemmi-numbers-as-strings.patch \
%D%/packages/patches/sajson-build-with-gcc10.patch \
%D%/packages/patches/sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch \
@@ -2301,7 +2278,6 @@ dist_patch_DATA = \
%D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \
%D%/packages/patches/sbcl-ciel-repl.patch \
%D%/packages/patches/sbcl-clml-fix-types.patch \
%D%/packages/patches/sbcl-cl-redis-replace-sbcl-specific-calls.patch \
%D%/packages/patches/sbcl-eazy-gnuplot-skip-path-check.patch \
%D%/packages/patches/sbcl-lack-fix-tests.patch \
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
@@ -2320,7 +2296,6 @@ dist_patch_DATA = \
%D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/libsequoia-fix-ffi-Makefile.patch \
%D%/packages/patches/libsequoia-remove-store.patch \
%D%/packages/patches/shaderc-for-pcsx2-changes.patch \
%D%/packages/patches/shakespeare-spl-fix-grammar.patch \
%D%/packages/patches/shared-mime-info-xdgmime-path.patch \
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
@@ -2330,7 +2305,6 @@ dist_patch_DATA = \
%D%/packages/patches/slim-login.patch \
%D%/packages/patches/slim-display.patch \
%D%/packages/patches/slurm-23-salloc-fallback-shell.patch \
%D%/packages/patches/slurm-drmaa-25.patch \
%D%/packages/patches/stex-copy-from-immutable-store.patch \
%D%/packages/patches/sysdig-shared-falcosecurity-libs.patch \
%D%/packages/patches/syslinux-gcc10.patch \
@@ -2351,13 +2325,6 @@ dist_patch_DATA = \
%D%/packages/patches/superlu-dist-awpm-grid.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/supertux-unbundle-squirrel.patch \
%D%/packages/patches/swift-5.7.3-sdk-path.patch \
%D%/packages/patches/swift-5.7.3-sourcekit-rpath.patch \
%D%/packages/patches/swift-6.2-cplus-include-path.patch \
%D%/packages/patches/swift-6.2-exclude-scan-test.patch \
%D%/packages/patches/swift-corelibs-libdispatch-5.6.3-lock-cpp.patch \
%D%/packages/patches/swift-corelibs-libdispatch-5.7.3-modulemap.patch \
%D%/packages/patches/swift-llvm-5.7.3-linux.patch \
%D%/packages/patches/swig-support-gcc-12.patch \
%D%/packages/patches/swish-e-search.patch \
%D%/packages/patches/swish-e-format-security.patch \
@@ -2386,7 +2353,6 @@ dist_patch_DATA = \
%D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \
%D%/packages/patches/texmacs-wayland-hidpi.patch \
%D%/packages/patches/tflite-micro_disable_download.patch \
%D%/packages/patches/thefuck-test-environ.patch \
%D%/packages/patches/thefuck-remove-broken-tests.patch \
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
@@ -2469,7 +2435,6 @@ dist_patch_DATA = \
%D%/packages/patches/vcmi-disable-privacy-breach.patch \
%D%/packages/patches/vinagre-newer-freerdp.patch \
%D%/packages/patches/vinagre-newer-rdp-parameters.patch \
%D%/packages/patches/vlc-livemedia-2024.11.28.patch \
%D%/packages/patches/vsearch-unbundle-cityhash.patch \
%D%/packages/patches/vst3sdk-3.7.7-allow-winelib-compilation.patch \
%D%/packages/patches/vte-CVE-2012-2738-pt1.patch \
@@ -2496,12 +2461,9 @@ dist_patch_DATA = \
%D%/packages/patches/wordnet-CVE-2008-3908-pt1.patch \
%D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch \
%D%/packages/patches/wpa-supplicant-dbus-group-policy.patch \
%D%/packages/patches/x2goclient-fix-makefile.patch \
%D%/packages/patches/x265-arm-flags.patch \
%D%/packages/patches/x265-4-arm-flags.patch \
%D%/packages/patches/xdg-desktop-portal-disable-portal-tests.patch\
%D%/packages/patches/xdg-desktop-portal-disable-configuration-search-exit.patch\
%D%/packages/patches/xdg-desktop-portal-1.20.3-disable-configuration-search-exit.patch\
%D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
%D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \
%D%/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch \
@@ -2510,14 +2472,11 @@ dist_patch_DATA = \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xgboost-use-system-dmlc-core.patch \
%D%/packages/patches/xiphos-glib.patch \
%D%/packages/patches/xlispstat-fix-compilation-with-modern-gcc.patch \
%D%/packages/patches/xmonad-dynamic-linking.patch \
%D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch \
%D%/packages/patches/xplanet-1.3.1-libdisplay_DisplayOutput.cpp.patch \
%D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch \
%D%/packages/patches/xplanet-1.3.1-xpUtil-Add2017LeapSecond.cpp.patch \
%D%/packages/patches/xpra-5.0-install_libs.patch \
%D%/packages/patches/xpra-5.0-systemd-run.patch \
%D%/packages/patches/xpra-6.0-systemd-run.patch \
%D%/packages/patches/xpra-6.1-install_libs.patch \
%D%/packages/patches/xterm-370-explicit-xcursor.patch \
+1 -1
View File
@@ -651,7 +651,7 @@ fdisk -l /dev/sda"
(format #f "#!/usr/bin/env bash
set -eo pipefail
apt-get update
apt-get install cloud-initramfs-growroot uidmap --assume-yes"))
apt-get install cloud-initramfs-growroot --assume-yes"))
(format #t "successfully installed rescue system packages on '~a'\n" name)))
(define (hetzner-machine-delete machine server)
+27 -34
View File
@@ -77,43 +77,36 @@
(build-system glib-or-gtk-build-system)
(outputs '("out" "bin"))
(arguments
(list
#:tests? #f ; Tests require drivers
#:configure-flags
#~(list "CFLAGS=-g -O2 -Wno-error=incompatible-pointer-types"
"--disable-static"
"--enable-fake")
#:phases
#~(modify-phases %standard-phases
#$@(if (this-package-native-input "config")
#~((add-after 'unpack 'update-config-scripts
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(for-each
(lambda (dir)
(for-each
(lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) dir))
(list "config.guess" "config.sub")))
(list "." "libltdl")))))
(list)))))
`(#:tests? #f ; Tests require drivers
#:configure-flags
(list "CFLAGS=-g -O2 -Wno-error=incompatible-pointer-types"
"--disable-static"
"--enable-fake")
#:phases
(modify-phases %standard-phases
,@(if (this-package-native-input "config")
`((add-after 'unpack 'update-config-scripts
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(for-each
(lambda (dir)
(for-each (lambda (file)
(install-file
(search-input-file
(or native-inputs inputs)
(string-append "/bin/" file)) dir))
'("config.guess" "config.sub")))
'("." "libltdl")))))
'()))))
(native-inputs
(append
(if (or (target-aarch64?)
(target-ppc64le?)
(target-riscv64?))
(list config)
(list))
(list latex2html
pkg-config
python-wrapper
swig)))
(if (or (target-aarch64?)
(target-ppc64le?)
(target-riscv64?))
(list config)
'())
(list latex2html pkg-config python-wrapper swig)))
(inputs
(list glib
gtk+-2
libusb-compat))
(list glib gtk+-2 libusb-compat))
(synopsis "Portable Braille Library")
(description "Libbraille is a library to easily access Braille displays and
terminals.")
+64 -122
View File
@@ -77,7 +77,6 @@
;;; Copyright © 2025 Dariqq <dariqq@posteo.net>
;;; Copyright © 2024 nik gaffney <nik@fo.am>
;;; Copyright © 2025 Simon Streit <simon@netpanic.org>
;;; Copyright © 2025 Luca Kredel <luca.kredel@web.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -190,7 +189,6 @@
#:use-module (gnu packages polkit)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
@@ -376,34 +374,23 @@ service.")
(package
(name "hungrycat")
(version "0.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jwilk/hungrycat/")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0llfb7kh2k53aqwc1fagw77fmwhvwdxd5qlg0fyrhqq298gj8wif"))))
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jwilk/hungrycat/"
"releases/download/" version "/"
"hungrycat-" version ".tar.gz"))
(sha256
(base32
"0xy9l4hky85h3rgdmqmhcnx0q1hq0brskr8lzw2lz6lh7pxlxmyw"))))
(build-system gnu-build-system)
(arguments
(list
;; tests: Files=2, Tests=2334, 1 wallclock secs
#:test-target "test"
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(add-after 'build 'build-doc
(lambda _
(invoke "make" "-C" "doc"))))))
(native-inputs
(list automake
autoconf
cppcheck
perl
perl-ipc-run
python-docutils))
;; For tests.
`(("python" ,python-wrapper)
("python-nose" ,python-nose)
("perl" ,perl)
("perl-ipc-run" ,perl-ipc-run)))
(arguments
`(#:test-target "test"))
(synopsis "Single tool that combines @command{cat} & @command{rm}")
(description
"hungrycat prints the contents of a file to standard output, while
@@ -596,59 +583,30 @@ interface and is based on GNU Guile.")
(define-public shepherd-1.0
(package
(inherit shepherd-0.10)
(version "1.0.9")
(version "1.0.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/shepherd/shepherd-"
version ".tar.gz"))
(sha256
(base32
"1mh080060lnycys8yq6kkiy363wif8dsip3nyklgd3a1r22wb274"))))
"15vmfbnah4p978zs4j95fl7m3sy98z1brgyz2m8s30zfh5srnnij"))))
(arguments
(list
#:configure-flags
#~(list "--localstatedir=/var"
;; Gzip and zstd are used by the log rotation service.
(string-append "--with-gzip=" #$(this-package-input "gzip")
"/bin/gzip")
(string-append "--with-zstd=" #$(this-package-input "zstd")
"/bin/zstd"))
#:make-flags #~'("GUILE_AUTO_COMPILE=0")
#:phases (if (%current-target-system)
#~(modify-phases %standard-phases
(add-before 'configure 'set-fibers-directory
(lambda* (#:key inputs #:allow-other-keys)
;; When cross-compiling, refer to the target
;; Fibers, not the native one.
(let ((fibers
(search-input-file
inputs
"share/guile/site/3.0/fibers.scm"))
(fibers-go
(search-input-file
inputs
"lib/guile/3.0/site-ccache/fibers.go")))
(substitute* '("herd.in" "shepherd.in")
(("%FIBERS_SOURCE_DIRECTORY%")
(dirname fibers))
(("%FIBERS_OBJECT_DIRECTORY%")
(dirname fibers-go)))))))
#~%standard-phases)))
(substitute-keyword-arguments (package-arguments shepherd-0.10)
((#:configure-flags flags #~'())
#~(list "--localstatedir=/var"
;; Gzip and zstd are used by the log rotation service.
(string-append "--with-gzip=" #$(this-package-input "gzip")
"/bin/gzip")
(string-append "--with-zstd=" #$(this-package-input "zstd")
"/bin/zstd")))))
(native-inputs
(modify-inputs (package-native-inputs shepherd-0.10)
(replace "guile-fibers"
;; Work around <https://codeberg.org/guile/fibers/issues/89>.
;; This affects any system without a functional real-time
;; clock (RTC), but in practice these are typically
;; single-board computers.
(if (or (target-arm?)
(target-riscv64?))
guile-fibers-1.1
guile-fibers)))) ;use latest guile-fibers available
(replace "guile-fibers" guile-fibers))) ;use latest guile-fibers available
(inputs
(modify-inputs (package-inputs shepherd-0.10)
(replace "guile-fibers"
(this-package-native-input "guile-fibers"))
(replace "guile-fibers" guile-fibers) ;use latest guile-fibers available
(append gzip zstd)))))
(define-public shepherd shepherd-0.10)
@@ -1974,7 +1932,7 @@ maintenance releases.")
(define-public dhcpcd
(package
(name "dhcpcd")
(version "10.3.0")
(version "10.2.3")
(source
(origin
(method git-fetch)
@@ -1983,7 +1941,7 @@ maintenance releases.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "058k8wbzbjb6mm6qklv40z1y4k6sdb4ysap1xk6pny1m1f9xkdax"))))
(base32 "01bqs71s2gixsir1cpnk6sm4k9dpdkrgp1r8cpbac50d6hwlxln3"))))
(inputs (list bash-minimal coreutils-minimal eudev sed))
(build-system gnu-build-system)
(arguments
@@ -2247,7 +2205,7 @@ by bandwidth they use.")
perl-test-pod
perl-test-pod-coverage
perl-test-trap
perl-tidy))
perltidy))
(inputs
(list bash-minimal ;for wrap-program
perl-exception-class
@@ -2524,7 +2482,7 @@ system administrator.")
(inputs
(append (list coreutils zlib)
(if (target-hurd?)
(list libxcrypt)
'()
(list linux-pam))))
(home-page "https://www.sudo.ws/")
(synopsis "Run commands as root")
@@ -2751,7 +2709,7 @@ command.")
#:tests? #f ; no tests
;; Make sure the (rarely updated) package 'imagemagick/stable'
;; does not end up in the closure.
#:disallowed-references (list (this-package-native-input "imagemagick"))
#:disallowed-references (list imagemagick/stable)
#:modules '((guix build qt-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -2983,7 +2941,7 @@ system is under heavy load.")
(define-public stress-ng
(package
(name "stress-ng")
(version "0.19.06")
(version "0.19.03")
(source
(origin
(method git-fetch)
@@ -2992,7 +2950,7 @@ system is under heavy load.")
(commit (string-append "V" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0fxyxxswkx5ay8i2w8ajsiagkysh8d41l88vls9c4rc35wxzhwf6"))))
(base32 "1phrmjvvjn55pyfljfkk604d8q8wn17l416v91hskj98v7b7yhck"))))
(build-system gnu-build-system)
(arguments
;; XXX The test suite seems to cause instability on the VisionFive 2
@@ -3174,34 +3132,29 @@ various ways that may be running with too much privilege.")
(define-public smartmontools
(package
(name "smartmontools")
(version "7.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/smartmontools/smartmontools")
(commit (string-append "RELEASE_"
(string-replace-substring version "." "_")))))
(file-name (git-file-name name version))
(sha256
(base32 "00c58xcqv73lzxf0baly2q0sqkyd2vncv93iabjj7jkvbzf7nqpz"))))
(version "7.4")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/smartmontools/smartmontools/"
version "/smartmontools-" version ".tar.gz"))
(sha256
(base32
"0gcrzcb4g7f994n6nws26g6x15yjija1gyzd359sjv7r3xj1z9p9"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list "BUILD_INFO=\"(Guix)\"")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "smartmontools"))))
#:configure-flags
#~(list (format #f "--with-scriptpath=~{~a:~}$PATH"
(map (lambda (pkg)
(in-vicinity pkg "bin"))
'#$(list (this-package-input "coreutils-minimal")
(this-package-input "sed")))))))
(inputs (list automake autoconf coreutils-minimal libcap-ng sed))
(inputs (list coreutils-minimal
libcap-ng
sed))
(home-page "https://www.smartmontools.org/")
(synopsis "S.M.A.R.T. harddisk control and monitoring tools")
(description
@@ -3215,7 +3168,7 @@ degradation and failure.")
(define-public fdupes
(package
(name "fdupes")
(version "2.4.0")
(version "2.3.2")
(source
(origin
(method url-fetch)
@@ -3223,7 +3176,7 @@ degradation and failure.")
"releases/download/v" version "/"
"fdupes-" version ".tar.gz"))
(sha256
(base32 "0dhpgcylf99cnxz8h4i4dhv2i3124cs0n8lssbhwn783knijfysj"))))
(base32 "1irab60gkjmnvk1l0x92cb5vh9zw9g0vgr3s82mir93zpvn8v3c0"))))
(build-system gnu-build-system)
(inputs
(list ncurses pcre2 sqlite))
@@ -3373,17 +3326,7 @@ provides the following commands:
(uri (pypi-uri "ansible" version))
(sha256
(base32 "0apj783acx4jzkf3bnibn4y5jc6jd8ly7l0rdqq8f1jpgxal933x"))))
(build-system pyproject-build-system)
(arguments
(list
;; XXX: All tests errored with:
;; from ...common.utils import (
;; E ImportError: attempted relative import with no known parent package
;;
;; tests: 17 skipped, 1 warning, 1132 errors
#:tests? #f))
(native-inputs
(list python-setuptools))
(build-system python-build-system)
(propagated-inputs (list ansible-core))
;; The Ansible collections are found by ansible-core via the Python search
;; path; the following search path ensures that they are found even when
@@ -3832,14 +3775,14 @@ rules is done with the @code{auditctl} utility.")
(define-public nmap
(package
(name "nmap")
(version "7.98")
(version "7.97")
(source (origin
(method url-fetch)
(uri (string-append "https://nmap.org/dist/nmap-" version
".tar.bz2"))
(sha256
(base32
"1rlpv238ixcj62d740w8xghcfmkvmg9453kh46gmr7mfx89p716f"))
"1h252sz1cqr0r440s7pxn9wwn1jffbrdvacnvmbw4w664mwz565g"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -4716,7 +4659,7 @@ information tool.")
(define-public fastfetch-minimal
(package
(name "fastfetch-minimal")
(version "2.55.1")
(version "2.53.0")
(source
(origin
(method git-fetch)
@@ -4725,7 +4668,7 @@ information tool.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0a2a8rp75nx16gvq0918999hifr2lph8dagpfipmyflaa5awlw54"))
(base32 "0w260lscjy3rqahhr2637hb3fqsklv2qx59f2v66wy99nnmqvbha"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
@@ -5200,7 +5143,7 @@ cache of unix and unix-like systems.")
(define-public solaar
(package
(name "solaar")
(version "1.1.16")
(version "1.1.14")
(source
(origin
(method git-fetch)
@@ -5209,7 +5152,7 @@ cache of unix and unix-like systems.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1q05pcrl1pr6ls92m5k690qrwqb4nz1lganxvbj9b40w3c6nh5iy"))))
(base32 "000700waw4z6ab40naycapjgqz8yvz9ny1px94ni4pwf8f3kh0vh"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
@@ -5446,7 +5389,7 @@ elogind's uaccess feature.")
(define-public jc
(package
(name "jc")
(version "1.25.6")
(version "1.25.5")
(source
(origin
;; The PyPI tarball lacks the test suite.
@@ -5456,7 +5399,7 @@ elogind's uaccess feature.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0bpna1hfwigv9r3i1xafl96jlj4335hrjq5rkrgh2nzc57453bly"))))
(base32 "16agzk47f1g72gni3lazqlcv7fs0nb2dwbagv6kxjbk36pm3mzmn"))))
(build-system pyproject-build-system)
(arguments
(list #:phases
@@ -5626,14 +5569,14 @@ Netgear devices.")
(define-public atop
(package
(name "atop")
(version "2.12.1")
(version "2.12.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.atoptool.nl/download/atop-"
version ".tar.gz"))
(sha256
(base32
"1xhjpmaans63g0y4z9gzff09fxxf9sgmj64ycc2r9y7sbmyfdnsg"))))
"11ih6kan3j9kg83pjhy9yffgpr638b0mfg1fq90yzrhl1k4yq28d"))))
(build-system gnu-build-system)
(arguments
(list
@@ -6661,11 +6604,10 @@ file or files to several hosts.")
(install-file "man-page/dust.1"
(string-append share "/man/man1"))
(mkdir-p (string-append out
"/share/bash-completion/completions"))
(copy-file
"completions/dust.bash"
(string-append
out "/share/bash-completion/completions/dust"))
"/etc/bash_completion.d"))
(copy-file "completions/dust.bash"
(string-append out
"/etc/bash_completion.d/dust"))
(install-file "completions/dust.fish"
(string-append share
"/fish/vendor_completions.d"))
+56 -134
View File
@@ -14,14 +14,12 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020, 2021, 2023, 2024, 2025 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2022 宋文武 <iyzsong@envs.net>
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2023 Mehmet Tekman <mtekman89@gmail.com>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Nigko Yerden <nigko.yerden@gmail.com>
;;; Copyright © 2025 Skylar Hill <stellarskylark@posteo.net>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Andy Tai <atai@atai.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -47,7 +45,6 @@
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages curl)
@@ -61,7 +58,6 @@
#:use-module (gnu packages image)
#:use-module (gnu packages java)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
@@ -241,7 +237,7 @@ the real span of the lattice.")
(inputs
(list fplll gmp mpfr pari-gp))
(propagated-inputs
(list python-cysignals python-cython python-flake8 python-numpy))
(list python-cysignals python-cython-3 python-flake8 python-numpy))
(home-page "https://github.com/fplll/fpylll")
(synopsis "Python interface for fplll")
(description "fpylll is a Python wrapper for fplll.")
@@ -269,7 +265,7 @@ the real span of the lattice.")
(define-public pari-gp
(package
(name "pari-gp")
(version "2.17.3")
(version "2.17.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -277,7 +273,7 @@ the real span of the lattice.")
version ".tar.gz"))
(sha256
(base32
"1jrd8q8bii109i01qjsc15948a47cn1kcg7jw0kqsijcb36lz74d"))))
"0qahws0jmmqv3v611zdwhvg0rz5a678lhi8z51x16yzrbj7mfc3x"))))
(build-system gnu-build-system)
(native-inputs (list (texlive-local-tree)))
(inputs (list gmp libx11 perl readline))
@@ -498,20 +494,25 @@ or text interfaces) or as a C++ library.")
(define-public flint
(package
(name "flint")
(version "3.4.0")
(version "3.2.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://flintlib.org/download/flint-"
version ".tar.gz"))
(sha256
(base32 "0csa8n7d4l3mh892q36nhiv1r7bkb168vszz79p95bfy0jc6g5wl"))))
(base32 "0gyjbkhwrmx2vgb1gailnmmzacl4aikzgi70dzmpf8lpfxny8yya"))))
(build-system gnu-build-system)
(inputs
(list ntl))
(propagated-inputs
(list gmp mpfr)) ; header files included by flint.h or mpfr_mat.h
(arguments
;; Parallel tests failed in the past on ARM, this may need to be
;; tested again.
`(#:parallel-tests? #f
;; Prevent build machine specifics from ending up in the binary.
'(#:configure-flags '("--disable-assembly")))
#:configure-flags '("--disable-assembly")))
(synopsis "Fast library for number theory")
(description
"FLINT is a C library for number theory. It supports arithmetic
@@ -529,31 +530,19 @@ fast arithmetic.")
(properties
'((release-monitoring-url . "http://flintlib.org/downloads.html")))))
(define-public flint-3.3
(package
(inherit flint)
(version "3.3.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://flintlib.org/download/flint-"
version ".tar.gz"))
(sha256
(base32 "1yzasdcv90f6w926p9g92cli2daxvb0mh2s1w1qskkvn618hxmv4"))))))
(define-public python-flint
(package
(name "python-flint")
(version "0.8.0")
(version "0.7.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fredrik-johansson/python-flint")
(commit version)))
(url "https://github.com/fredrik-johansson/python-flint")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1xdclpxpas29v3g14z2fxqf7hv4a6iq7bknl9d9r1510dcpxm67a"))))
(base32 "09nsys2cajxsfh2c13nf98a2kwnm0msmab9f9zcjpkndj4ir453a"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -561,11 +550,11 @@ fast arithmetic.")
(native-inputs
(list meson-python
pkg-config
python-cython
python-cython-3
python-pytest))
(inputs
(list gmp
flint-3.3))
flint))
(propagated-inputs
(list python-numpy))
(home-page "https://fredrikj.net/python-flint/")
@@ -627,7 +616,7 @@ matrices, and polynomials over the integers and over finite fields.")
(define-public singular
(package
(name "singular")
(version "4.4.1p5")
(version "4.4.1")
(source
(origin
(method url-fetch)
@@ -643,7 +632,7 @@ matrices, and polynomials over the integers and over finite fields.")
"/singular-" version ".tar.gz"))
(sha256
(base32
"1pwygpmhf4sddf1v5x5fr1kbbkb29wlfd5yyj7lryvhbs45s9rdw"))))
"16xlhar1krlskh9gxbw1gw4qi8248c95w71vzxdw72avs2pblkva"))))
(build-system gnu-build-system)
(arguments
(list
@@ -817,80 +806,6 @@ a C program.")
principle, 'Keep It Simple, Stupid.'")
(license license:bsd-3)))
(define-public kissfft-for-tflite-micro
(package
(inherit kissfft)
(name "kissfft-for-tflite-micro")
(version "130")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mborgerding/kissfft")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
"137h3pkn6jmc3pcgnqsq481f6jjblx7ygw9gyipgcdysmnhrwiv2")
(patches (search-patches "kissfft-tflite-micro.patch"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'install
(lambda _
(for-each (lambda (f)
(install-file f
(string-append #$output "/include")))
'("kiss_fft.h" "kissfft.hh"))
(for-each (lambda (f)
(install-file f
(string-append #$output
"/include/tools")))
(find-files "tools"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "make" "CC=gcc" "testall")))))))
(native-inputs (list procps))
(inputs (list fftw))))
(define-public clac
(package
(name "clac")
(version "0.3.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/soveran/clac")
(commit version)))
(file-name (git-file-name name version))
(sha256
"0crpm5rxxipiz6kqs5ip900d77vvnslyjn5f6nj0lrc86bkbgi8d")))
(build-system gnu-build-system)
(arguments
(list
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'set-env
(lambda _
(setenv "CC" "gcc")
(setenv "PREFIX" #$output))))))
(home-page "https://github.com/soveran/clac")
(synopsis "Command-line, stack-based calculator with postfix notation")
(description
"Clac is a command line, stack-based calculator with postfix notation
that displays the stack contents at all times. As you type, the stack
changes are reflected immediately.")
;; Bundles two dependencies, both also BSD-2. SDS is not yet packaged.
;; linenoise is packaged, but the package doesn't provide shared
;; object files so we have to build it anyway.
(license license:bsd-2)))
(define-public fftw
(package
(name "fftw")
@@ -1138,34 +1053,6 @@ Optional thin wrappers allow usage of the library from other languages.")
(license (list license:expat ;SymEngine
license:bsd-3)))) ;3rd party code
(define-public python-symengine
(package
(name "python-symengine")
(version "0.14.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "symengine" version))
(sha256
(base32 "1w7hwavbxgikljy9m3p89k3x2zdhv81h9bh330aw4wb3qm74p7jf"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags #~(list "--pyargs" "symengine")))
(native-inputs
(list cmake-minimal
python-cython
python-pytest
python-setuptools))
(inputs
(list symengine))
(home-page "https://github.com/symengine/symengine.py")
(synopsis "Python library providing wrappers to SymEngine")
(description
"This library provides a Python wrapper to SymEngine, a fast C++ symbolic
manipulation library.")
(license license:expat)))
(define-public ginac
(package
(name "ginac")
@@ -1984,14 +1871,14 @@ no more than about 20 bits long).")
(define-public r-dtt
(package
(name "r-dtt")
(version "0.1-2.1")
(version "0.1-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "dtt" version))
(sha256
(base32
"113qb6fjp08gcmv4cgq3cm2fk6k3r3j1wfsrygq8889i2bq4a073"))))
"0n8gj5iylfagdbaqirpykb01a9difsy4zl6qq55f0ghvazxqdvmn"))))
(properties `((upstream-name . "dtt")))
(build-system r-build-system)
(home-page "https://www.r-project.org")
@@ -2298,3 +2185,38 @@ systems. This encompasses:
@item the computation of the dimension and the degree of the solution set.
@end itemize")
(license license:gpl2+)))
(define-public clac
(package
(name "clac")
(version "0.3.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/soveran/clac")
(commit version)))
(file-name (git-file-name name version))
(sha256
"0crpm5rxxipiz6kqs5ip900d77vvnslyjn5f6nj0lrc86bkbgi8d")))
(build-system gnu-build-system)
(arguments
(list
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'set-env
(lambda _
(setenv "CC" "gcc")
(setenv "PREFIX" #$output))))))
(home-page "https://github.com/soveran/clac")
(synopsis "Command-line, stack-based calculator with postfix notation")
(description
"Clac is a command line, stack-based calculator with postfix notation
that displays the stack contents at all times. As you type, the stack
changes are reflected immediately.")
;; Bundles two dependencies, both also BSD-2. SDS is not yet packaged.
;; linenoise is packaged, but the package doesn't provide shared
;; object files so we have to build it anyway.
(license license:bsd-2)))
+79 -83
View File
@@ -53,9 +53,7 @@
#:use-module (gnu packages gcc)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages image)
#:use-module (gnu packages iso-codes)
#:use-module (gnu packages java)
#:use-module (gnu packages linux)
#:use-module (gnu packages pcre)
@@ -1117,30 +1115,36 @@ safest way, on a file image.")
(define-public python-androguard
(package
(name "python-androguard")
(version "3.3.5") ;TODO: It was released in 2019, there is a fresh version
(version "3.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "androguard" version))
(sha256
(base32 "18nd08rbvc4d1p9r70qp76rcbldvpv89prsi15alrmxdlnimqrgh"))))
(build-system pyproject-build-system)
;; XXX: The pypi release doesn't have the tests, but the tests use
;; packaged binaries, so we skip them.
(origin
;; The pypi release doesn't have the tests, but the tests use
;; packaged binaries, so we skip them.
(method url-fetch)
(uri (pypi-uri "androguard" version))
(sha256
(base32
"0ndsw00pkyda4i2s3wi5ap8gbk6a9d23xhhxpdbk02padv8sxkfv"))))
(build-system python-build-system)
(arguments
(list #:tests? #f))
'(#:phases
(modify-phases %standard-phases
(replace 'check
;; Adapted from .travis.yml
(lambda _
(invoke "nosetests" "--with-coverage" "--with-timer"
"--timer-top-n" "50"))))))
(native-inputs
(list python-setuptools))
(list python-codecov python-coverage python-mock python-nose
python-nose-timer))
(propagated-inputs
(list python-asn1crypto
python-click
python-colorama
python-future
python-ipython
python-lxml
python-matplotlib
python-networkx
python-pydot
python-pygments
python-pyperclip))
(home-page "https://github.com/androguard/androguard")
@@ -1192,49 +1196,49 @@ for communicating with Xiaomi smart appliances over miIO and MIoT protocols.")
(define-public fdroidserver
(package
(name "fdroidserver")
(version "2.4.2")
(version "1.1.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fdroidserver" version))
(sha256
(base32
"06xybginrwi5c7bw000wz5s5hzi0aqrxskzwh8qc6wv463w2djax"))))
(build-system pyproject-build-system)
"0m07f791z45w7r2dzx4yb6s54b3c3wykm3w9hn25p2jcyax082a2"))))
(build-system python-build-system)
(arguments
(list
#:tests? #f ;requires Android SDK
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'set-env
(lambda _
(setenv "HOME" "/tmp"))))))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-versioning
(lambda _
(substitute* "setup.py"
(("0.2.1") ,(package-version python-pyasn1-modules))
;; The dependency on docker has been removed upstream by
;; a fairly large patch:
;; https://gitlab.com/fdroid/fdroidserver/-/commit/89614851250c79a05db84070feca6dea033af334
;; that is not in a release yet. It appears we can compile with
;; a newer version.
(("docker-py >= 1.9, < 2.0") "docker >= 1.9"))
#t)))))
(propagated-inputs
(list python-androguard
python-apache-libcloud
python-argcomplete
python-asn1crypto
python-clint
python-defusedxml
python-docker
python-gitpython
python-mwclient
python-oscrypto
python-paramiko
python-pillow
python-platformdirs
python-puremagic
python-pyasn1
python-pyasn1-modules
python-pyyaml
python-qrcode
python-ruamel.yaml
python-requests
python-ruamel.yaml-0.16
python-vagrant
python-yamllint
sdkmanager))
python-vagrant))
(native-inputs
(list python-babel python-setuptools))
(list python-babel python-bcrypt python-docker-pycreds python-pynacl
python-websocket-client))
(home-page "https://f-droid.org")
(synopsis "F-Droid server tools")
(description
@@ -1306,58 +1310,50 @@ emulator inside the comfort of Emacs.")
(package
(name "enjarify")
(version "1.0.3")
(home-page "https://github.com/Storyyeller/enjarify")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Storyyeller/enjarify")
(commit version)))
(file-name (git-file-name name version))
(patches
(search-patches "enjarify-setup-py.patch"))
(sha256
(base32 "1nam7h1g4f1h6jla4qcjjagnyvd24dv6d5445w04q8hx07nxdapk"))))
(build-system pyproject-build-system)
(method git-fetch)
(uri (git-reference
(url home-page)
(commit version)))
(file-name (git-file-name name version))
(patches
(search-patches "enjarify-setup-py.patch"))
(sha256
(base32
"1nam7h1g4f1h6jla4qcjjagnyvd24dv6d5445w04q8hx07nxdapk"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'fix-tests
(lambda _
(substitute* "enjarify/runtests.py"
(("from \\.main") "from enjarify.main")
(("from \\.jvm") "from enjarify.jvm"))
;; Upstream adjusted this test in commit:
;; 3ae884a6485af82d300515813f537685b08dd800
(substitute* "tests/test2/expected.txt"
(("^20") "0"))
;; Upstream removed this argument in order to support 32-bit
;; architectures. commit:
;; 4be0111d879aa95fdc0d9f24fe529f8c664d4093
(substitute* "enjarify/runtests.py"
(("java -Xss515m") "java "))))
(add-after 'install 'install-enjarify-wrapper
(lambda _
(let ((bin (string-append #$output "/bin")))
(install-file "enjarify.sh" bin)
(symlink (string-append bin "/enjarify.sh")
(string-append bin "/enjarify")))))
(replace 'check
(lambda* (#:key tests? test-flags #:allow-other-keys)
(when tests?
(invoke "python" "-m" "enjarify.runtests")))))))
(native-inputs
(list openjdk12
python-setuptools))
(home-page "https://github.com/Storyyeller/enjarify")
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'fixup-expected-test-results
;; Upstream adjusted this test in commit:
;; 3ae884a6485af82d300515813f537685b08dd800
(lambda _
(substitute* "tests/test2/expected.txt"
(("^20") "0"))
#t))
(add-before 'check 'drop-java-xss-argument
;; Upstream removed this argument in order to support 32-bit
;; architectures. commit: 4be0111d879aa95fdc0d9f24fe529f8c664d4093
(lambda _
(substitute* "enjarify/runtests.py"
(("java -Xss515m") "java "))
#t))
(add-after 'install 'install-enjarify-wrapper
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/bin/"))
(copy-file "enjarify.sh" (string-append out "/bin/enjarify"))
#t))))))
(native-inputs (list openjdk12))
(synopsis "Translate Dalvik bytecode to equivalent Java bytecode")
(description
"Android applications are Java programs that run on a customized virtual
machine, which is part of the Android operating system, the Dalvik VM. Their
bytecode differs from the bytecode of normal Java applications. Enjarify can
translate the Dalvik bytecode back to equivalent Java bytecode, which
simplifies the analysis of Android applications. It's an alternative fork of
not maintained Goole's project https://github.com/google/enjarify.")
(description "Android applications are Java programs that run on a
customized virtual machine, which is part of the Android operating system, the
Dalvik VM. Their bytecode differs from the bytecode of normal Java
applications. Enjarify can translate the Dalvik bytecode back to equivalent
Java bytecode, which simplifies the analysis of Android applications.")
(license license:asl2.0)))
(define-public android-file-transfer
+1 -2
View File
@@ -83,7 +83,6 @@
(guix build cmake-build-system)
(guix build utils))
#:phases
(with-extensions (list (cargo-guile-json))
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-cargo-build-system
(lambda args
@@ -112,7 +111,7 @@
(substitute* "unit_tests/CMakeLists.txt"
(("clamd_test\\.py" test)
(string-append
test " -k \"not test_clamd_08_VirusEvent\""))))))))))
test " -k \"not test_clamd_08_VirusEvent\"")))))))))
(native-inputs
(append
(list pkg-config
+25 -27
View File
@@ -40,15 +40,13 @@
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AppImage/type2-runtime")
(commit commit)))
(url "https://github.com/AppImage/type2-runtime")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0954crhlbapxis96g1s0vfpf78ybr64zvjalak387ksxj560g44x"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; No tests
#:make-flags
#~(list "-Csrc/runtime" "runtime-fuse3"
(string-append "CC=" #$(cc-for-target))
@@ -62,33 +60,34 @@
`((guix build gnu-build-system)
(guix build utils)
(ice-9 binary-ports))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda _
(install-file "src/runtime/runtime-fuse3"
(string-append #$output "/bin"))))
;; Must be after all elf reliant phases. Used to identify the
;; executable as an AppImage as per the specification.
(add-after 'make-dynamic-linker-cache 'set-magic-bytes
(lambda _
(let ((port (open (string-append #$output
"/bin/runtime-fuse3")
(logior O_WRONLY))))
(seek port 8 SEEK_SET)
(put-bytevector port #vu8(#x41 #x49 #x02))
(close-port port)))))
#:disallowed-references
(list (this-package-input "squashfuse-for-appimage")
(this-package-input "fuse")
(gexp-input (this-package-input "zstd") "static")
(gexp-input (this-package-input "zlib") "static"))))
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(delete 'check) ; No tests.
(replace 'install
(lambda _
(install-file "src/runtime/runtime-fuse3"
(string-append #$output "/bin"))))
;; Must be after all elf reliant phases. Used to identify the
;; executable as an AppImage as per the specification.
(add-after 'make-dynamic-linker-cache 'set-magic-bytes
(lambda _
(let ((port (open (string-append #$output
"/bin/runtime-fuse3")
(logior O_WRONLY))))
(seek port 8 SEEK_SET)
(put-bytevector port #vu8(#x41 #x49 #x02))
(close-port port)))))
#:disallowed-references (list squashfuse-for-appimage
fuse-for-appimage
(gexp-input zstd "static")
(gexp-input zlib "static"))))
;; Only needed at build time.
(inputs (list squashfuse-for-appimage
fuse-for-appimage
`(,zstd "static")
`(,zlib "static")))
(build-system gnu-build-system)
(home-page "https://github.com/AppImage/type2-runtime")
(synopsis "Runtime for executing AppImages")
(description "The runtime is the executable part of every AppImage. It mounts
the payload via @acronym{FUSE} and executes the entrypoint, allowing users to run
@@ -97,5 +96,4 @@ ensures that the AppImage can access its bundled libraries and resources seamles
providing a consistent environment across different Linux distributions. In the
absence of @acronym{FUSE}, the AppImage can still be started using the
@option{--appimage-extract-and-run} flag.")
(home-page "https://github.com/AppImage/type2-runtime")
(license license:expat))))
+65 -64
View File
@@ -84,69 +84,70 @@
(delete-file-recursively "external/sqlite")))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~'("-DBUILD_PRESET=everything" "-DDISTR_TAG='Guix'")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "src/platform/posix/paths.c"
(("/usr/local") #$output))))
;; Normally, it tries to fetch patched openal with git
;; but copying files manually in the right place seems
;; to work too.
(add-after 'unpack 'prepare-static-openal
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively #$(this-package-input "arcan-openal-checkout")
"external/git/openal")))
(add-after 'prepare-static-openal 'generate-man
(lambda _
(with-directory-excursion "doc"
(invoke "ruby" "docgen.rb" "mangen"))))
(add-before 'configure 'chdir
(lambda _
(chdir "src"))))
(list #:configure-flags #~'("-DBUILD_PRESET=everything"
"-DDISTR_TAG='Guix'")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "src/platform/posix/paths.c"
(("/usr/local")
(assoc-ref outputs "out")))))
;; Normally, it tries to fetch patched openal with git
;; but copying files manually in the right place seems
;; to work too.
(add-after 'unpack 'prepare-static-openal
(lambda* (#:key inputs #:allow-other-keys)
(let ((arcan-openal (assoc-ref inputs
"arcan-openal")))
(copy-recursively arcan-openal
"external/git/openal")) #t))
(add-after 'prepare-static-openal 'generate-man
(lambda _
(with-directory-excursion "doc"
(invoke "ruby" "docgen.rb" "mangen")) #t))
(add-before 'configure 'chdir
(lambda _
(chdir "src") #t)))
#:tests? #f))
(inputs
(list bash-minimal
espeak
ffmpeg-6
freetype
gumbo-parser
harfbuzz
jbig2dec
leptonica
libdrm
libjpeg-turbo
libseccomp
libusb
libvnc
libxkbcommon
luajit
mupdf
openal
openjpeg
sdl2
sqlite
tesseract-ocr
vlc
wayland
wayland-protocols
xcb-util
xcb-util-wm
zlib
;; To build arcan_lwa, we need a patched version of openal.
;; https://github.com/letoram/arcan/wiki/packaging
(origin
(method git-fetch)
(file-name "arcan-openal-checkout")
(uri (git-reference (url
"https://github.com/letoram/openal")
(commit "0.6.2")))
(sha256
(base32
"0vg3fda47q2dk1n43ijcc64q39z044pa8h6scmfyi22g6r6bfw2z")))))
(inputs `(("bash-minimal" ,bash-minimal)
("espeak" ,espeak)
("ffmpeg" ,ffmpeg)
("freetype" ,freetype)
("gumbo-parser" ,gumbo-parser)
("harfbuzz" ,harfbuzz)
("jbig2dec" ,jbig2dec)
("leptonica" ,leptonica)
("libdrm" ,libdrm)
("libjpeg-turbo" ,libjpeg-turbo)
("libseccomp" ,libseccomp)
("libusb" ,libusb)
("libvnc" ,libvnc)
("libxkbcommon" ,libxkbcommon)
("luajit" ,luajit)
("mupdf" ,mupdf)
("openal" ,openal)
("openjpeg" ,openjpeg)
("sdl2" ,sdl2)
("sqlite" ,sqlite)
("tesseract-ocr" ,tesseract-ocr)
("vlc" ,vlc)
("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)
("xcb-util" ,xcb-util)
("xcb-util-wm" ,xcb-util-wm)
("zlib" ,zlib)
;; To build arcan_lwa, we need a patched version of openal.
;; https://github.com/letoram/arcan/wiki/packaging
("arcan-openal"
,(origin
(method git-fetch)
(file-name "arcan-openal-0.6.2")
(uri (git-reference (url
"https://github.com/letoram/openal")
(commit "0.6.2")))
(sha256
(base32
"0vg3fda47q2dk1n43ijcc64q39z044pa8h6scmfyi22g6r6bfw2z"))))))
(native-inputs (list pkg-config ruby)) ;For documentation and testing
(home-page "https://arcan-fe.com")
(synopsis "Display server, multimedia framework and game engine")
@@ -315,5 +316,5 @@ as a window under Arcan.")
(license (list license:bsd-3 license:expat))))
;; Package was merged into arcan in upstream.
(define-deprecated-package arcan-wayland
arcan)
(define-public arcan-wayland
(deprecated-package "arcan-wayland" arcan))
+1 -32
View File
@@ -15,7 +15,7 @@
;;; Copyright © 2021 Sergiu Ivanov <sivanov@colimite.fr>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2024 Maxim Cournoyer <maxim@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -482,34 +482,3 @@ European languages.")
(for-each (cut install-file <> include-dir)
'("config.h" "defhash.h" "ispell.h"
"libispell.h" "local.h")))))))))))))
(define-public spell
(package
(name "spell")
(version "1.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/spell/spell-" version ".tar.gz"))
(sha256
(base32 "0i4pqbhzkv5y4c2j7ajx713jykxsnn4dqdcqfvzn04xkgra47hkw"))))
(build-system gnu-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-commands
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "spell.c"
(("aspell")
(search-input-file inputs "bin/aspell"))
(("ispell_prog = \"ispell\"")
(format #f "ispell_prog = ~s"
(search-input-file inputs "bin/ispell")))))))))
(inputs (list aspell ispell))
(synopsis "Spell checking")
(description
"Spell is a command-line spell-checking program. It reads through
a text input and prints each misspelled word on a line of its own. It is
implemented as a wrapper for GNU aspell or ispell.")
(home-page "https://savannah.gnu.org/projects/spell/")
(license gpl3+)))
+840 -1833
View File
File diff suppressed because it is too large Load Diff
+228 -339
View File
@@ -31,7 +31,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020, 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2020, 2024 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2020, 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020, 2021, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021 jgart <jgart@dismail.de>
@@ -57,8 +57,6 @@
;;; Copyright © 2025 Kjartan Oli Agustsson <kjartanoli@outlook.com>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
;;; Copyright © 2025 Isidor Zeuner <guix@quidecco.pl>
;;; Copyright © 2025 Evgenii Klimov <eugene.dev@lipklim.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -250,43 +248,10 @@ promoting the market for advanced audio.")
(home-page "https://www.khronos.org/opensles/")
(license (license:non-copyleft "file:///LICENSE.txt"))))
(define-public python-sounddevice
(package
(name "python-sounddevice")
(version "0.5.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "sounddevice" version))
(sha256
(base32 "0b4vcaj79sy9aqsrgcszkp35x2fc0i4pqzk96d2viflg35h2pb6b"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #false ; no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'patch-generated-file-shebangs 'add-path-to-portaudio
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "sounddevice.py"
(("_find_library\\(_libname\\)")
(string-append "\""
(search-input-file inputs
"/lib/libportaudio.so.2")
"\""))))))))
(inputs (list portaudio))
(propagated-inputs (list python-cffi python-numpy))
(native-inputs (list python-setuptools))
(home-page "https://python-sounddevice.readthedocs.io/")
(synopsis "Play and record sound with Python")
(description "This Python module provides bindings for the PortAudio
library and a few convenience functions to play and record NumPy arrays
containing audio signals.")
(license license:expat)))
(define-public wildmidi
(package
(name "wildmidi")
(version "0.4.6")
(version "0.4.4")
(source
(origin
(method git-fetch)
@@ -296,7 +261,7 @@ containing audio signals.")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0cc8vg2alyzakmm132vljx228arisqcnfqh8xyjnnczr5vryqa5k"))))
(base32 "08fbbsvw6pkwwqarjwcvdp8mq4zn5sgahf025hynwc6rvf4sp167"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; No target
@@ -814,7 +779,7 @@ streams from live audio.")
(define-public dsp
(package
(name "dsp")
(version "2.0")
(version "1.9")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -823,7 +788,7 @@ streams from live audio.")
(file-name (git-file-name name version))
(sha256
(base32
"1kzjv972qbvzh7nml3brrdf6qmjmcapldbikbn2gxhpmkgxzhhar"))))
"0iksmianwig7w78hqip2a8yy6r63sv8cv9pis8qxny6w1xap6njb"))))
(build-system gnu-build-system)
(arguments
(list
@@ -906,129 +871,120 @@ purposes developed at Queen Mary, University of London.")
(license license:gpl2+)))
(define-public jamesdsp
(let ((commit "53cf0989681ba38755208c8aec063f29ed8586d3")
(revision "0"))
(package
(name "jamesdsp")
(version (git-version "2.7.0" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Audio4Linux/JDSP4Linux")
(commit commit)
;; Recurse GraqhicEQWidget, FlatTabWidget, LiquidEqualizerWidget and
;; EELEditor.
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1b5612gr2gfmj1h5hdzfa9xxdwixia06a34n2zs04cra94clif9i"))
(modules '((guix build utils)))
(snippet
;; Unbundle 3rd party libraries.
'(begin
;; Delete the bundled 3rd party libraries.
(for-each delete-file-recursively
(list "3rdparty"
"src/subprojects/EELEditor/3rdparty"
"src/subprojects/EELEditor/QCodeEditor"
"src/subprojects/EELEditor/src/EELEditor-Linker.pri"))
(with-directory-excursion "src"
(package
(name "jamesdsp")
(version "2.7.0")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Audio4Linux/JDSP4Linux")
(commit version)
;; Recurse GraqhicEQWidget, FlatTabWidget, LiquidEqualizerWidget and
;; EELEditor.
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "17vx12kbvwxvb69vzrlb82mrgf6sl3plyk71g9f39p49ialdsnbr"))
(modules '((guix build utils)))
(snippet
;; Unbundle 3rd party libraries.
'(begin
;; Delete the bundled 3rd party libraries.
(for-each delete-file-recursively
(list "3rdparty"
"src/subprojects/EELEditor/3rdparty"
"src/subprojects/EELEditor/QCodeEditor"
"src/subprojects/EELEditor/src/EELEditor-Linker.pri"))
(with-directory-excursion "src"
(substitute* "src.pro"
;; Do not use bundled 3rd party libraries.
((".*3rdparty.*") "")
;; Link required libraries from system.
(("-ldl")
(string-join '("-ldl"
"-lasync++"
"-lQCodeEditor"
"-lqcustomplot"
"-lqtadvanceddocking-qt6"
"-lqtcsv"
"-lwaf")
" ")))
;; Fix including WAF headers.
(substitute* "MainWindow.cpp"
(("<Animation") "<WAF/Animation"))
;; Do not use resources from the bundled docking-system.
(substitute* '("interface/fragment/AppManagerFragment.ui")
((".*location.*3rdparty.*") "")
((" resource=.*>") ">"))
(with-directory-excursion "subprojects/EELEditor/src"
;; Do not use bundled QCodeEditor and docking-system.
(substitute* "EELEditor.pri"
((".*(QCodeEditor|docking-system).*") ""))
;; Do not link to bundled docking-system.
(substitute* "src.pro"
;; Do not use bundled 3rd party libraries.
((".*3rdparty.*") "")
;; Link required libraries from system.
(("-ldl")
(string-join '("-ldl"
"-lasync++"
"-lQCodeEditor"
"-lqcustomplot"
"-lqtadvanceddocking-qt6"
"-lqtcsv"
"-lwaf")
" ")))
;; Fix including WAF headers.
(substitute* "MainWindow.cpp"
(("<Animation") "<WAF/Animation"))
;; Do not use resources from the bundled docking-system.
(substitute* '("interface/fragment/AppManagerFragment.ui")
((".*location.*3rdparty.*") "")
((" resource=.*>") ">"))
(with-directory-excursion "subprojects/EELEditor/src"
;; Do not use bundled QCodeEditor and docking-system.
(substitute* "EELEditor.pri"
((".*(QCodeEditor|docking-system).*") ""))
;; Do not link to bundled docking-system.
(substitute* "src.pro"
((".*EELEditor-Linker.*") ""))
;; Fix including headers from the system.
(substitute* (find-files "." "\\.(cpp|h)$")
(("#include <Dock") "#include <qtadvanceddocking-qt6/Dock")
(("#include <FloatingDock")
"#include <qtadvanceddocking-qt6/FloatingDock")
(("#include <QSyntaxStyle")
"#include <QCodeEditor/QSyntaxStyle")
(("#include <QStyleSyntaxHighlighter")
"#include <QCodeEditor/QStyleSyntaxHighlighter")
(("#include <QHighlightRule")
"#include <QCodeEditor/QHighlightRule")
(("#include <QLanguage") "#include <QCodeEditor/QLanguage")
(("#include <QCodeEditor\\.hpp")
"#include <QCodeEditor/QCodeEditor.hpp"))))))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
#:tests? #f ;no tests
#:parallel-build? #f ;fails on some systems
#:modules '((guix build qt-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
;; Configure using qmake.
(replace 'configure
(lambda _
(invoke "qmake" (string-append "PREFIX=" #$output))))
(replace 'build (assoc-ref gnu:%standard-phases 'build))
(replace 'check (assoc-ref gnu:%standard-phases 'check))
(replace 'install (assoc-ref gnu:%standard-phases 'install))
(add-after 'install 'install-icon
(lambda _
(let ((pixmaps (string-append #$output "/share/pixmaps")))
(mkdir-p pixmaps)
(copy-file "resources/icons/icon.png"
(string-append pixmaps "/jamesdsp.png")))))
(add-after 'install-icon 'create-desktop-entry-file
(lambda _
(make-desktop-entry-file
(string-append #$output
"/share/applications/jamesdsp.desktop")
#:name "JamesDSP"
#:comment "Audio effect processor"
#:keywords '("equalizer" "audio" "effect")
#:categories '("AudioVideo" "Audio")
#:exec (string-append #$output "/bin/jamesdsp")
#:icon (string-append #$output
"/share/pixmaps/jamesdsp.png")
#:startup-notify #f))))))
(native-inputs
(list pkg-config))
(inputs
(list asyncplusplus
glibmm-2.66
libarchive
pipewire
qcodeeditor
qcustomplot
qt-advanced-docking-system
qtcsv
qtpromise
qtsvg
qtwidgetanimationframework))
(home-page "https://github.com/Audio4Linux/JDSP4Linux")
(synopsis "Audio effect processor for PipeWire and PulseAudio clients")
(description "JamesDSP is an audio effect processor for PipeWire and
((".*EELEditor-Linker.*") ""))
;; Fix including headers from the system.
(substitute* (find-files "." "\\.(cpp|h)$")
(("#include <Dock") "#include <qtadvanceddocking-qt6/Dock")
(("#include <FloatingDock")
"#include <qtadvanceddocking-qt6/FloatingDock")
(("#include <QSyntaxStyle")
"#include <QCodeEditor/QSyntaxStyle")
(("#include <QStyleSyntaxHighlighter")
"#include <QCodeEditor/QStyleSyntaxHighlighter")
(("#include <QHighlightRule")
"#include <QCodeEditor/QHighlightRule")
(("#include <QLanguage") "#include <QCodeEditor/QLanguage")
(("#include <QCodeEditor\\.hpp")
"#include <QCodeEditor/QCodeEditor.hpp"))))))
(patches (search-patches "jamesdsp-fix-bulid-on-pipewire-1.4.0.patch"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
;; Configure using qmake.
(replace 'configure
(lambda* (#:key inputs #:allow-other-keys)
(invoke "qmake" (string-append "PREFIX=" #$output))))
(add-after 'install 'install-icon
(lambda _
(let ((pixmaps (string-append #$output "/share/pixmaps")))
(mkdir-p pixmaps)
(copy-file "resources/icons/icon.png"
(string-append pixmaps "/jamesdsp.png")))))
(add-after 'install-icon 'create-desktop-entry-file
(lambda _
(make-desktop-entry-file
(string-append #$output
"/share/applications/jamesdsp.desktop")
#:name "JamesDSP"
#:comment "Audio effect processor"
#:keywords '("equalizer" "audio" "effect")
#:categories '("AudioVideo" "Audio")
#:exec (string-append #$output "/bin/jamesdsp")
#:icon (string-append #$output "/share/pixmaps/jamesdsp.png")
#:startup-notify #f))))))
(native-inputs
(list pkg-config))
(inputs
(list asyncplusplus
glibmm-2.66
libarchive
pipewire
qcodeeditor
qcustomplot
qt-advanced-docking-system
qtcsv
qtpromise
qtsvg
qtwidgetanimationframework))
(home-page "https://github.com/Audio4Linux/JDSP4Linux")
(synopsis "Audio effect processor for PipeWire and PulseAudio clients")
(description "JamesDSP is an audio effect processor for PipeWire and
PulseAudio clients, featuring:
@itemize
@item Automatic bass boost: Frequency-detecting bass-boost
@@ -1050,7 +1006,7 @@ PulseAudio clients, featuring:
dynamic code outline window, console output support and detailed error
messages with inline code highlighting
@end itemize")
(license license:gpl3+))))
(license license:gpl3+)))
(define ardour-bundled-media
(origin
@@ -1201,16 +1157,6 @@ namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \
perl
pkg-config
unzip))
(native-search-paths
(list (search-path-specification
(variable "LADSPA_PATH")
(files '("lib/ladspa")))
(search-path-specification
(variable "LV2_PATH")
(files '("lib/lv2")))
(search-path-specification
(variable "LXVST_PATH")
(files '("lib/lxvst")))))
(home-page "https://ardour.org")
(synopsis "Digital audio workstation")
(description
@@ -1224,7 +1170,7 @@ engineers, musicians, soundtrack editors and composers.")
(define-public audacity
(package
(name "audacity")
(version "3.7.7")
(version "3.7.4")
(source
(origin
(method git-fetch)
@@ -1233,7 +1179,7 @@ engineers, musicians, soundtrack editors and composers.")
(commit (string-append "Audacity-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0h2xdhbx6bjhlk2mxqalpbpzjcdj0sb8wf1rp3vj0fbgvxy1y92k"))
(base32 "184hak52p00qid0i581gky7076fl5rjxwqly0fw7ix8yi6j8li4h"))
(patches (search-patches "audacity-ffmpeg-fallback.patch"))
(modules '((guix build utils)))
(snippet
@@ -1649,7 +1595,7 @@ plugins are provided.")
(define-public cable
(package
(name "cable")
(version "0.9.21")
(version "0.9.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1658,7 +1604,10 @@ plugins are provided.")
(file-name (git-file-name name version))
(sha256
(base32
"1c7fy92nwp2m96asls460s83xapzcc6pqvplmg5rqds1rddiva2h"))))
"0pzafiim1cnxrngk6nzmpx9sx1lc6qrqjrrcxg1qpigcrjvrfjs2"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "Arch packages"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -1679,7 +1628,21 @@ plugins are provided.")
(install-file "jack-plug.svg"
(string-append #$output "/share/icons/hicolor/scalable/apps/"))
(install-file "com.github.magillos.cable.desktop"
(string-append #$output "/share/applications/")))))))
(string-append #$output "/share/applications/"))))
(add-after 'install-more 'wrap-executables
(lambda* (#:key inputs #:allow-other-keys)
(let* ((pyversion
#$(version-major+minor (package-version
(this-package-input "python"))))
(lib (string-append #$output "/lib/python" pyversion
"/site-packages"))
(file
(string-append lib "/cables/launch-connection-manager.py")))
(chmod file #o555)
(wrap-script file
#:guile (search-input-file inputs "bin/guile")
`("GUIX_PYTHONPATH" ":" prefix
(,lib ,(getenv "GUIX_PYTHONPATH"))))))))))
(inputs
(list python
python-dbus
@@ -1700,7 +1663,7 @@ connections manager, pw-top wrapper, simple ALSA mixer and jack_delay GUI.")
(define-public calf
(package
(name "calf")
(version "0.90.8")
(version "0.90.6")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1709,7 +1672,7 @@ connections manager, pw-top wrapper, simple ALSA mixer and jack_delay GUI.")
(file-name (git-file-name name version))
(sha256
(base32
"0wzkshqazw26w73h1lva5wr8v2bq0a20kjd6lfvbi1pj3ql3azk5"))))
"0p4zqzr7spy3jjsmy6h7n5lsyqqyh23bswk1r3kims50b102xhxd"))))
(build-system cmake-build-system)
(arguments (list #:tests? #false)) ;there is no test target
(inputs
@@ -1865,7 +1828,7 @@ reel-to-reel tape machines.")
(define-public iir
(package
(name "iir")
(version "1.10.0")
(version "1.9.4")
(source
(origin
(method git-fetch)
@@ -1874,7 +1837,7 @@ reel-to-reel tape machines.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0p64l0fmr7mfjhfxg6yc4f06aacbr6bb8kjmb5ffm95sq12rzdss"))))
(base32 "1fqxn0qlvykpk9hiliivmkjjcz3g1bp83yd0zfm82r14abkjbj2g"))))
(build-system cmake-build-system)
(arguments
(list
@@ -1961,7 +1924,7 @@ synthesis.")
(define-public snapcast
(package
(name "snapcast")
(version "0.34.0")
(version "0.32.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1970,7 +1933,7 @@ synthesis.")
(file-name (git-file-name name version))
(sha256
(base32
"0jqzzjw1njixapj89yvgbhk7yrfc14xsfd94pf6z6lfna8c01yq4"))))
"06hllji1621f29g6ymbysi1vkndjsrwj63f5ph30f6kvv3c8sqx4"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;no included tests
(inputs
@@ -2078,8 +2041,6 @@ emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.")
(sha256
(base32 "0g0yfmwmrkvrkvynx84bays6jph3wq2hq1md5ylr7n5a8g0c17hn"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f))
(native-inputs
(list boost pkg-config))
(inputs
@@ -2407,7 +2368,7 @@ the non-linear circuit elements of their original analog counterparts.")
(define-public rev-plugins
(package
(name "rev-plugins")
(version "0.8.1")
(version "0.7.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2416,24 +2377,23 @@ the non-linear circuit elements of their original analog counterparts.")
version ".tar.bz2"))
(sha256
(base32
"1yhnvjgr14qr0ni0n2x8dhlzbx1qfgyrnffbaaq0d5xbzfgrq543"))))
"1ikpinxm00pkfi259bnkzhsy3miagrjgdihaaf5x4v7zac29j3g7"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ; no "check" target
#:phases
#~(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-after 'unpack 'change-directory
(lambda _
(chdir "source")))
(add-after 'change-directory 'override-target-directory
(lambda _
(substitute* "Makefile"
(("/usr") #$output))))
(add-before 'install 'prepare-target-directory
(lambda _
(mkdir-p (string-append #$output "/lib/ladspa")))))))
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA reverb plugin")
(description
@@ -2747,7 +2707,7 @@ also play midifiles using a Soundfont.")
(define-public faust-2
(package
(inherit faust)
(version "2.81.10")
(version "2.75.7")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/grame-cncm/faust/"
@@ -2755,7 +2715,7 @@ also play midifiles using a Soundfont.")
"/faust-" version ".tar.gz"))
(sha256
(base32
"0mj7gn7xp6mzr94nqcyrrkcmzm81chq6qb1n76wspah71lw7g6f6"))))
"11ww02zmj3vnva1w52hs9wkxvhwwf53agklyzm2c7gysw0jfvkw9"))))
(build-system cmake-build-system)
(arguments
(list
@@ -2902,7 +2862,7 @@ partial release of the General MIDI sound set.")
(("'rU'") "'r'")))))))
(inputs
(list libsndfile
boost-1.83
boost
curl
avahi
eigen
@@ -3181,7 +3141,7 @@ and testing or configuring the JACK session. Tools include @code{jack_lsp},
(define-public jacktrip
(package
(name "jacktrip")
(version "2.7.1")
(version "1.6.8")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3189,7 +3149,7 @@ and testing or configuring the JACK session. Tools include @code{jack_lsp},
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1d9cn4nny3kbf3f9x0bcsrqb0ir1h789nv7s72xmhf7r5rfd9xm4"))))
(base32 "0719ng799kingv0y9yk07bvnmprk25c09ph3yaia5dhapg0jz17m"))))
(build-system gnu-build-system)
(arguments
(list
@@ -3208,11 +3168,10 @@ and testing or configuring the JACK session. Tools include @code{jack_lsp},
python
python-jinja2
python-pyyaml
qtbase
qtwayland
qtbase-5
rtaudio))
(native-inputs
(list pkg-config))
(list pkg-config qtbase-5)) ;for qmake
(home-page "https://jacktrip.github.io/jacktrip/")
(synopsis "Multi-machine audio system for network music performance")
(description
@@ -3294,30 +3253,25 @@ from being able to mix multiple JACK audio streams.")
"1q8mzjv577vdi64s47gd4pg0ydzxvs32cwrb1d64v90f52qpgbpd"))))
(build-system meson-build-system)
(arguments
(list #:tests? #f ; no check target
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'build-PIC
;; The default -fPIE #errors when combined with our Qt
;; packages. Work around the broken meson.build script
;; clobbering c_args.
(lambda _
(substitute* "meson.build"
(("'-DZIX_STATIC'" match)
(string-append match ", '-fPIC'"))))))))
`(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-before 'configure 'build-PIC
;; The default -fPIE #errors when combined with our Qt packages.
;; Work around the broken meson.build script clobbering c_args.
(lambda _
(substitute* "meson.build"
(("'-DZIX_STATIC'" match)
(string-append match ", '-fPIC'"))))))))
(inputs
(list lv2
lilv
suil
gtk+
jack-1
qtbase-5))
qtbase-5
jack-1))
(native-inputs
(list pkg-config))
(native-search-paths
(list (search-path-specification
(variable "LV2_PATH")
(files '("lib/lv2")))))
(home-page "https://drobilla.net/software/jalv.html")
(synopsis "Simple LV2 host for JACK")
(description
@@ -3581,7 +3535,6 @@ compensation, (de)interleaving, and byte-swapping
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ;no test target
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'find-library
@@ -3771,13 +3724,13 @@ CFFI and NumPy.")
(define-public python-soxr
(package
(name "python-soxr")
(version "1.0.0")
(version "0.5.0.post1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "soxr" version))
(sha256
(base32 "02a5balcm8dvlb938gl2k3kqvfdq1k300j2g0dbnkg2rsv0yczp0"))))
(base32 "0wzz7j0z814mm99xr19vfrwp2x904lbwhf513x7085m4x3rvk4kh"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -3805,6 +3758,7 @@ CFFI and NumPy.")
python-scikit-build-core
python-setuptools
python-setuptools-scm
python-sphinx
python-typing-extensions
python-wheel))
(home-page "https://github.com/dofuuz/python-soxr")
@@ -4322,14 +4276,14 @@ different audio devices such as ALSA or PulseAudio.")
(define-public qjackctl
(package
(name "qjackctl")
(version "1.0.4")
(version "1.0.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz"))
(sha256
(base32
"1bhlfnlvqgircnlq014whaka01ki6ja44xzynjbwszclknc6zsz3"))))
"0wzimnxb9yjj155l0hqb57smf0158a4bbzi6bj11pp60njld4zqn"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ; no check target
@@ -4423,7 +4377,6 @@ link REQUIRED)"))))))
"ide")) ;qt ide
(arguments
(list
#:qtbase qtbase
#:configure-flags
#~(list "-DSYSTEM_BOOST=ON"
"-DSYSTEM_YAMLCPP=ON"
@@ -4472,7 +4425,7 @@ link REQUIRED)"))))))
eudev ;for user interactions with devices
avahi ;zeroconf service discovery support
icu4c
boost-1.83
boost
boost-sync
yaml-cpp
python-wrapper ;there were warnings in the build process
@@ -5670,42 +5623,6 @@ encoder used for an MPEG Layer III (MP3) file, as well as scan any MPEG audio
file (any layer) and print a lot of useful information.")
(license license:lgpl2.1+)))
(define-public mp3cat
(package
(name "mp3cat")
(version "0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tomclegg/mp3cat")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0n6hjg2wgd06m561zc3ib5w2m3pwpf74njv2b2w4sqqh5md2ymfr"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;upstream defines no tests
#:make-flags
#~(list (string-append "PREFIX="
#$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'patch-makefile
(lambda _args
(substitute* "Makefile"
(("cc")
#$(cc-for-target))))))))
(home-page "http://tomclegg.net/mp3cat")
(synopsis "MP3 stream copier and concatenator")
(description
"Copies a stream, skipping everything except MP3 frames with valid
headers. This can be used to copy and concatenate streams, even if
they contain extra garbage.")
(license license:gpl2+)))
(define-public shntool
(package
(name "shntool")
@@ -6011,7 +5928,7 @@ kbps at 24 bit/96 kHz.")
(define-public bluez-alsa
(package
(name "bluez-alsa")
(version "4.3.1")
(version "3.0.0")
(source (origin
;; The tarballs are mere snapshots and don't contain a
;; bootstrapped build system.
@@ -6022,7 +5939,7 @@ kbps at 24 bit/96 kHz.")
(file-name (git-file-name name version))
(sha256
(base32
"05qzmcsihhd92vpjd45qr0gdzfqiw4jfcdjdg78mzimv9g5g3rjm"))))
"1jlsgxyqfhncfhx1sy3ry0dp6p95kd4agh7g2b7g51h0c4cv74h8"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -6034,12 +5951,7 @@ kbps at 24 bit/96 kHz.")
(assoc-ref %outputs "out")
"/etc/dbus-1/system.d"))))
(native-inputs
(list autoconf
automake
`(,glib "bin")
libtool
pkg-config
python-minimal))
(list autoconf automake libtool pkg-config))
(inputs
(list alsa-lib
bluez
@@ -6127,50 +6039,26 @@ customized and extended using either the s7 Scheme implementation (included in
the Snd sources), Ruby, or Forth.")
(license (license:non-copyleft "file://COPYING"))))
(define-public libspecbleach
(package
(name "libspecbleach")
(version "0.1.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lucianodato/libspecbleach")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0czmzhggg5gl833karfrl2c0pr2k3jf7q7jd3y68hyj0cnn6f3jg"))))
(build-system meson-build-system)
(native-inputs
(list pkg-config))
(inputs
(list fftwf))
(home-page "https://github.com/lucianodato/libspecbleach")
(synopsis "C library for audio noise reduction and other spectral effects")
(description
"This package provides a C library for audio noise reduction and other
spectral effects. It is based on the algorithms that were used in
@code{noise-repellent}. These were extracted into a this standalone library to
remove the lv2 dependency. It uses the concept of a spectral processor which
itself uses a @acronym{STFT, short time Fourier transform} to process the audio.")
(license license:lgpl2.1+)))
(define-public noise-repellent
(package
(name "noise-repellent")
(version "0.2.3")
(version "0.1.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lucianodato/noise-repellent")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0dq0rv7mndw0lqacl2nf9dmj4zzq19hfminzk3fzbppk5mh2rivp"))))
"0hb89x9i2knzan46q4nwscf5zmnb2nwf4w13xl2c0y1mx1ls1mwl"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
(list (string-append "--prefix=" (assoc-ref %outputs "out")
"/lib/lv2"))))
(inputs
(list fftwf libspecbleach lv2))
(list lv2 fftwf))
(native-inputs
(list pkg-config))
(home-page "https://github.com/lucianodato/noise-repellent")
@@ -6294,7 +6182,7 @@ representations.")
(define-public cava
(package
(name "cava")
(version "0.10.6")
(version "0.10.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -6303,7 +6191,7 @@ representations.")
(file-name (git-file-name name version))
(sha256
(base32
"12ysxbm1di2m0qac4rgd5f94fvlxv64s7kyy5s0d2bbxyzvdcqvm"))))
"09wwzqynfmdzn77vxxmrw2z0yz95p4zg9cgfp9vnpv70visi98d0"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake libtool pkg-config))
(inputs (list alsa-lib fftw ncurses pipewire pulseaudio iniparser
@@ -6432,16 +6320,16 @@ library supports sample rates up to 96 kHz and up to eight channels (7.1
(define-public libfreeaptx
(package
(name "libfreeaptx")
(version "0.2.2")
(version "0.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/regularhunter/libfreeaptx")
(url "https://github.com/iamthehorker/libfreeaptx")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0xk247w2l7jd51rbavqnmqk6sqnifhf46k4wwfj572pz7k9cbmly"))))
"1fm5041nd08yzg0m9474g0943lb3x54zmn59b53nhvxan8x22ibq"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests.
@@ -6453,8 +6341,8 @@ library supports sample rates up to 96 kHz and up to eight channels (7.1
#:phases
#~(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://github.com/regularhunter/libfreeaptx")
(synopsis "Free implementation of aptX")
(home-page "https://github.com/iamthehorker/libfreeaptx")
(synopsis "aptX codec library")
(description "libfreeaptx is an implementation of the Audio Processing
Technology codecs aptX and aptX HD, mainly intended for use with an A2DP
bluetooth profile.")
@@ -6554,7 +6442,7 @@ other Gnaural instances, allowing synchronous sessions between many users.")
(define-public darkice
(package
(name "darkice")
(version "1.5")
(version "1.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/rafael2k/darkice/releases/"
@@ -6562,7 +6450,7 @@ other Gnaural instances, allowing synchronous sessions between many users.")
version ".tar.gz"))
(sha256
(base32
"13h58skz5xik75sjv9kf2299haly2nc5gswl22ff1kvw79bw9d0q"))))
"05yq7lggxygrkd76yiqby3msrgdn082p0qlvmzzv9xbw8hmyra76"))))
(build-system gnu-build-system)
(native-inputs (list pkg-config))
(inputs (list lame
@@ -7312,13 +7200,17 @@ Rate} 3600x2250 bit/s vocoder used in various radio systems.")
(native-inputs
(list catch-framework
python ;for running tests
portaudio)) ;for portaudio examples
portaudio ;for portaudio examples
qtbase-5 ;for Qt examples
qtdeclarative-5
qttools-5))
(inputs
(list jack-1)) ;for JACK examples
(list jack-1 ;for JACK examples
qtquickcontrols-5)) ;for Qt examples
(propagated-inputs
;; This is because include/ableton/platforms/asio/AsioWrapper.hpp
;; contains '#include <asio.hpp>'.
(list asio-1.28))
(list asio))
(arguments
`(#:configure-flags
'("-DLINK_BUILD_QT_EXAMPLES=ON"
@@ -7376,14 +7268,14 @@ while still staying in time.")
(define-public butt
(package
(name "butt")
(version "1.45.0")
(version "0.1.38")
(source (origin
(method url-fetch)
(uri (string-append "https://danielnoethen.de/butt/release/"
(uri (string-append "mirror://sourceforge/butt/butt/butt-"
version "/butt-" version ".tar.gz"))
(sha256
(base32
"0r43xph6xf02c9zldhyj82mvy82xv0f9wbv653gg2kkcjh88ajc8"))
"10i3xpxzccdl4pidiyymw9cfavhy50yhn7xi5bd77y91f2903kp9"))
(modules '((guix build utils)))
(snippet
'(substitute* "src/butt.cpp"
@@ -7394,21 +7286,19 @@ while still staying in time.")
#~(modify-phases %standard-phases
(add-after 'install 'install-documentation
(lambda _
(let ((doc (string-append #$output:doc "/share/doc/" #$name)))
(let ((doc (string-append #$output "/share/doc/" #$name)))
(install-file "README" doc)
(copy-file #$(this-package-native-input "manual")
(string-append doc "/butt-manual.pdf"))))))))
(outputs '("out" "doc"))
(native-inputs
`(("pkg-config" ,pkg-config)
("manual"
,(origin
(method url-fetch)
(uri (string-append "https://danielnoethen.de/butt/release/" version
"/butt-"
(uri (string-append "https://danielnoethen.de/butt/butt-"
version "_manual.pdf"))
(sha256
(base32 "07mr25k26xrpns3s7ci27jmp71c49a23r0mi662ir5v35rz4bf4q"))))))
(base32 "04aixxqshfj11ja3ifh0zvywl2mqzmymppcd0xj8sv0j7whjibaq"))))))
(inputs
(list curl
dbus
@@ -7426,8 +7316,7 @@ while still staying in time.")
libogg
openssl
opus
portaudio
portmidi-2))
portaudio))
(home-page "https://danielnoethen.de/butt/")
(synopsis "Audio streaming tool")
(description "Butt is a tool to stream audio to a ShoutCast or
@@ -7561,7 +7450,7 @@ Home Page}.")
(define-public python-librosa
(package
(name "python-librosa")
(version "0.11.0")
(version "0.10.2.post1")
(source
(origin
(method git-fetch)
@@ -7571,7 +7460,7 @@ Home Page}.")
;; For test files.
(recursive? #true)))
(sha256
(base32 "065x43hx670rjrclxi4hiqxscllb16v9s7myjvg7rd5pd3y0k7sg"))))
(base32 "1x37148y1rh4sq2nc59iw9jlza3zwawxnlb7bd9w36an05aclmnh"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -7700,7 +7589,7 @@ and DSD streams.")
(define-public qpwgraph
(package
(name "qpwgraph")
(version "0.9.7")
(version "0.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -7709,7 +7598,7 @@ and DSD streams.")
(file-name (git-file-name name version))
(sha256
(base32
"1j3na9svy0rvz84rl9g2szl3rqxfyi5rqk1i12hdiwnyi6q7ppxi"))))
"036qzc2sjxa1lvysf7shyjkp1jyjkpalgxf74bgyzm89phqac7cc"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f)) ; no tests
@@ -7905,7 +7794,7 @@ verifies checksums.")
fmt
gsl
gtk
nlohmann-json
json-modern-cxx ;nlohmann_json
libadwaita
libbs2b
libebur128
+1 -6
View File
@@ -221,13 +221,8 @@ YubiKey into your existing user authentication infrastructure.")
(sha256
(base32 "1mdj1wj0adcnx354fs17928yn2xfr1hj5mfraq282dagi873sqw3"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'force-reconfigure
(lambda _ (delete-file "configure"))))))
(native-inputs
(list autoconf automake libtool pkg-config))
(list pkg-config))
(inputs
(list linux-pam))
(home-page "https://pamtester.sourceforge.net/")
File diff suppressed because it is too large Load Diff
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 6.17.6 Kernel Configuration
# Linux/i386 6.16.3 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 14.3.0"
CONFIG_CC_IS_GCC=y
@@ -102,7 +102,6 @@ CONFIG_NO_HZ_IDLE=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US=100
# CONFIG_POSIX_AUX_CLOCKS is not set
# end of Timers subsystem
CONFIG_BPF=y
@@ -173,7 +172,6 @@ CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
# Scheduler features
#
# CONFIG_UCLAMP_TASK is not set
# CONFIG_SCHED_PROXY_EXEC is not set
# end of Scheduler features
CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
@@ -192,7 +190,6 @@ CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
CONFIG_GROUP_SCHED_WEIGHT=y
CONFIG_GROUP_SCHED_BANDWIDTH=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
# CONFIG_RT_GROUP_SCHED is not set
@@ -256,7 +253,6 @@ CONFIG_PCSPKR_PLATFORM=y
# CONFIG_BASE_SMALL is not set
CONFIG_FUTEX=y
CONFIG_FUTEX_PI=y
CONFIG_FUTEX_PRIVATE_HASH=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
@@ -264,13 +260,13 @@ CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_IO_URING=y
# CONFIG_IO_URING_MOCK_FILE is not set
CONFIG_ADVISE_SYSCALLS=y
CONFIG_MEMBARRIER=y
CONFIG_KCMP=y
CONFIG_RSEQ=y
# CONFIG_DEBUG_RSEQ is not set
CONFIG_CACHESTAT_SYSCALL=y
# CONFIG_PC104 is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_SELFTEST is not set
CONFIG_KALLSYMS_ALL=y
@@ -292,14 +288,10 @@ CONFIG_TRACEPOINTS=y
#
# Kexec and crash features
#
CONFIG_CRASH_RESERVE=y
CONFIG_VMCORE_INFO=y
CONFIG_KEXEC_CORE=y
CONFIG_KEXEC=y
CONFIG_KEXEC_JUMP=y
CONFIG_CRASH_DUMP=y
CONFIG_CRASH_HOTPLUG=y
CONFIG_CRASH_MAX_MEMORY_RANGES=8192
# end of Kexec and crash features
# end of General setup
@@ -453,12 +445,11 @@ CONFIG_MICROCODE_INITRD32=y
# CONFIG_MICROCODE_LATE_LOADING is not set
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM4G is not set
CONFIG_VMSPLIT_3G=y
# CONFIG_VMSPLIT_2G is not set
# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
CONFIG_X86_PAE=y
# CONFIG_X86_CPA_STATISTICS is not set
CONFIG_ARCH_FLATMEM_ENABLE=y
@@ -496,10 +487,8 @@ CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
CONFIG_ARCH_SUPPORTS_KEXEC_SIG_FORCE=y
CONFIG_ARCH_SUPPORTS_KEXEC_BZIMAGE_VERIFY_SIG=y
CONFIG_ARCH_SUPPORTS_KEXEC_JUMP=y
CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
CONFIG_ARCH_DEFAULT_CRASH_DUMP=y
CONFIG_ARCH_SUPPORTS_CRASH_HOTPLUG=y
CONFIG_ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION=y
CONFIG_PHYSICAL_START=0x1000000
CONFIG_RELOCATABLE=y
CONFIG_RANDOMIZE_BASE=y
@@ -538,7 +527,6 @@ CONFIG_MITIGATION_SPECTRE_V2=y
CONFIG_MITIGATION_SRBDS=y
CONFIG_MITIGATION_SSB=y
CONFIG_MITIGATION_TSA=y
CONFIG_MITIGATION_VMSCAPE=y
#
# Power management and ACPI options
@@ -770,7 +758,6 @@ CONFIG_KVM_WERROR=y
CONFIG_KVM_INTEL=m
# CONFIG_KVM_INTEL_PROVE_VE is not set
CONFIG_KVM_AMD=m
CONFIG_KVM_IOAPIC=y
CONFIG_KVM_SMM=y
CONFIG_KVM_HYPERV=y
CONFIG_KVM_XEN=y
@@ -813,8 +800,6 @@ CONFIG_HOTPLUG_CORE_SYNC=y
CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
CONFIG_HOTPLUG_CORE_SYNC_FULL=y
CONFIG_HOTPLUG_SPLIT_STARTUP=y
CONFIG_GENERIC_IRQ_ENTRY=y
CONFIG_GENERIC_SYSCALL=y
CONFIG_GENERIC_ENTRY=y
CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
@@ -879,7 +864,7 @@ CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP=y
CONFIG_SECCOMP_FILTER=y
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_HAVE_ARCH_KSTACK_ERASE=y
CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
@@ -949,7 +934,6 @@ CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT=4
CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y
CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
CONFIG_ARCH_HAS_CPU_ATTACK_VECTORS=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -1125,7 +1109,6 @@ CONFIG_MIGRATION=y
CONFIG_CONTIG_ALLOC=y
CONFIG_PCP_BATCH_SCALE_MAX=5
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_BOUNCE=y
CONFIG_MMU_NOTIFIER=y
CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
@@ -1146,7 +1129,7 @@ CONFIG_CMA=y
# CONFIG_CMA_DEBUGFS is not set
CONFIG_CMA_SYSFS=y
CONFIG_CMA_AREAS=7
CONFIG_PAGE_BLOCK_MAX_ORDER=10
CONFIG_PAGE_BLOCK_ORDER=10
CONFIG_GENERIC_EARLY_IOREMAP=y
CONFIG_PAGE_IDLE_FLAG=y
CONFIG_IDLE_PAGE_TRACKING=y
@@ -1182,8 +1165,6 @@ CONFIG_DAMON_PADDR=y
CONFIG_DAMON_SYSFS=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_LRU_SORT=y
# CONFIG_DAMON_STAT is not set
# CONFIG_DAMON_STAT_ENABLED_DEFAULT is not set
# end of Data Access Monitoring
# end of Memory Management options
@@ -1356,6 +1337,7 @@ CONFIG_NF_CONNTRACK_TIMEOUT=y
CONFIG_NF_CONNTRACK_TIMESTAMP=y
CONFIG_NF_CONNTRACK_LABELS=y
CONFIG_NF_CONNTRACK_OVS=y
CONFIG_NF_CT_PROTO_DCCP=y
CONFIG_NF_CT_PROTO_GRE=y
CONFIG_NF_CT_PROTO_SCTP=y
CONFIG_NF_CT_PROTO_UDPLITE=y
@@ -1389,7 +1371,6 @@ CONFIG_NF_TABLES_INET=y
CONFIG_NF_TABLES_NETDEV=y
CONFIG_NFT_NUMGEN=m
CONFIG_NFT_CT=m
# CONFIG_NFT_EXTHDR_DCCP is not set
CONFIG_NFT_FLOW_OFFLOAD=m
CONFIG_NFT_CONNLIMIT=m
CONFIG_NFT_LOG=m
@@ -1420,7 +1401,6 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE=m
CONFIG_NF_FLOW_TABLE_PROCFS=y
CONFIG_NETFILTER_XTABLES=m
CONFIG_NETFILTER_XTABLES_LEGACY=y
#
# Xtables combined modules
@@ -1727,7 +1707,6 @@ CONFIG_NET_DSA_TAG_AR9331=m
CONFIG_NET_DSA_TAG_BRCM_COMMON=m
CONFIG_NET_DSA_TAG_BRCM=m
CONFIG_NET_DSA_TAG_BRCM_LEGACY=m
CONFIG_NET_DSA_TAG_BRCM_LEGACY_FCS=m
CONFIG_NET_DSA_TAG_BRCM_PREPEND=m
CONFIG_NET_DSA_TAG_HELLCREEK=m
CONFIG_NET_DSA_TAG_GSWIP=m
@@ -1812,7 +1791,6 @@ CONFIG_NET_SCH_FQ_PIE=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_SCH_PLUG=m
CONFIG_NET_SCH_ETS=m
CONFIG_NET_SCH_DUALPI2=m
# CONFIG_NET_SCH_DEFAULT is not set
#
@@ -2287,8 +2265,6 @@ CONFIG_RAPIDIO_CPS_GEN2=m
CONFIG_RAPIDIO_RXS_GEN3=m
# end of RapidIO Switch drivers
# CONFIG_PC104 is not set
#
# Generic Driver Options
#
@@ -2414,8 +2390,6 @@ CONFIG_EFI_EARLYCON=y
CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y
# CONFIG_EFI_DISABLE_RUNTIME is not set
CONFIG_EFI_COCO_SECRET=y
# CONFIG_OVMF_DEBUG_LOG is not set
CONFIG_EFI_SBAT_FILE=""
# end of EFI (Extensible Firmware Interface) Support
CONFIG_UEFI_CPER=y
@@ -2535,7 +2509,6 @@ CONFIG_MTD_MTDRAM=m
CONFIG_MTDRAM_TOTAL_SIZE=4096
CONFIG_MTDRAM_ERASE_SIZE=128
CONFIG_MTD_BLOCK2MTD=m
CONFIG_MTD_INTEL_DG=m
#
# Disk-On-Chip Device Drivers
@@ -2664,6 +2637,9 @@ CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=65536
CONFIG_CDROM_PKTCDVD=m
CONFIG_CDROM_PKTCDVD_BUFFERS=8
# CONFIG_CDROM_PKTCDVD_WCACHE is not set
CONFIG_ATA_OVER_ETH=m
CONFIG_XEN_BLKDEV_FRONTEND=y
CONFIG_XEN_BLKDEV_BACKEND=m
@@ -2836,6 +2812,7 @@ CONFIG_SCSI_HPSA=m
CONFIG_SCSI_3W_9XXX=m
CONFIG_SCSI_3W_SAS=m
CONFIG_SCSI_ACARD=m
CONFIG_SCSI_AHA152X=m
CONFIG_SCSI_AHA1542=m
CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=m
@@ -2893,6 +2870,9 @@ CONFIG_SCSI_GENERIC_NCR5380=m
CONFIG_SCSI_IPS=m
CONFIG_SCSI_INITIO=m
CONFIG_SCSI_INIA100=m
CONFIG_SCSI_PPA=m
CONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
CONFIG_SCSI_STEX=m
CONFIG_SCSI_SYM53C8XX_2=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
@@ -3091,6 +3071,7 @@ CONFIG_DM_THIN_PROVISIONING=m
CONFIG_DM_CACHE=m
CONFIG_DM_CACHE_SMQ=m
CONFIG_DM_WRITECACHE=m
# CONFIG_DM_EBS is not set
CONFIG_DM_ERA=m
CONFIG_DM_CLONE=m
CONFIG_DM_MIRROR=m
@@ -3341,7 +3322,6 @@ CONFIG_BNXT_SRIOV=y
CONFIG_BNXT_FLOWER_OFFLOAD=y
# CONFIG_BNXT_DCB is not set
CONFIG_BNXT_HWMON=y
CONFIG_BNGE=m
CONFIG_NET_VENDOR_CADENCE=y
CONFIG_MACB=m
CONFIG_MACB_USE_HWSTAMP=y
@@ -3381,8 +3361,6 @@ CONFIG_ULI526X=m
CONFIG_PCMCIA_XIRCOM=m
CONFIG_NET_VENDOR_DLINK=y
CONFIG_DL2K=m
CONFIG_SUNDANCE=m
# CONFIG_SUNDANCE_MMIO is not set
CONFIG_NET_VENDOR_EMULEX=y
CONFIG_BE2NET=m
CONFIG_BE2NET_HWMON=y
@@ -3409,7 +3387,6 @@ CONFIG_NET_VENDOR_I825XX=y
CONFIG_NET_VENDOR_INTEL=y
CONFIG_LIBETH=m
CONFIG_LIBIE=m
CONFIG_LIBIE_ADMINQ=m
CONFIG_E100=m
CONFIG_E1000=m
CONFIG_E1000E=m
@@ -3624,8 +3601,6 @@ CONFIG_NET_VENDOR_WANGXUN=y
CONFIG_LIBWX=m
CONFIG_NGBE=m
CONFIG_TXGBE=m
CONFIG_TXGBEVF=m
CONFIG_NGBEVF=m
CONFIG_NET_VENDOR_WIZNET=y
CONFIG_WIZNET_W5100=m
CONFIG_WIZNET_W5300=m
@@ -3645,7 +3620,6 @@ CONFIG_SKFP=m
CONFIG_PHYLINK=m
CONFIG_PHYLIB=y
CONFIG_SWPHY=y
CONFIG_PHY_PACKAGE=m
# CONFIG_LED_TRIGGER_PHY is not set
CONFIG_OPEN_ALLIANCE_HELPERS=y
CONFIG_FIXED_PHY=y
@@ -4145,7 +4119,6 @@ CONFIG_RTL8XXXU_UNTESTED=y
CONFIG_RTW89=m
CONFIG_RTW89_CORE=m
CONFIG_RTW89_PCI=m
CONFIG_RTW89_USB=m
CONFIG_RTW89_8851B=m
CONFIG_RTW89_8852A=m
CONFIG_RTW89_8852B_COMMON=m
@@ -4153,10 +4126,8 @@ CONFIG_RTW89_8852B=m
CONFIG_RTW89_8852BT=m
CONFIG_RTW89_8852C=m
CONFIG_RTW89_8851BE=m
CONFIG_RTW89_8851BU=m
CONFIG_RTW89_8852AE=m
CONFIG_RTW89_8852BE=m
CONFIG_RTW89_8852BU=m
CONFIG_RTW89_8852BTE=m
CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_8922AE is not set
@@ -4288,6 +4259,7 @@ CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ADC=m
CONFIG_KEYBOARD_ADP5520=m
CONFIG_KEYBOARD_ADP5588=m
CONFIG_KEYBOARD_ADP5589=m
CONFIG_KEYBOARD_APPLESPI=m
CONFIG_KEYBOARD_ATKBD=y
CONFIG_KEYBOARD_QT1050=m
@@ -4578,8 +4550,6 @@ CONFIG_RMI4_F03_SERIO=m
CONFIG_RMI4_2D_SENSOR=y
CONFIG_RMI4_F11=y
CONFIG_RMI4_F12=y
CONFIG_RMI4_F1A=y
CONFIG_RMI4_F21=y
CONFIG_RMI4_F30=y
# CONFIG_RMI4_F34 is not set
CONFIG_RMI4_F3A=y
@@ -4961,7 +4931,6 @@ CONFIG_SPI_DYNAMIC=y
#
# SPI Offload triggers
#
CONFIG_SPI_OFFLOAD_TRIGGER_ADI_UTIL_SD=m
CONFIG_SPI_OFFLOAD_TRIGGER_PWM=m
CONFIG_SPMI=m
CONFIG_HSI=m
@@ -5009,15 +4978,6 @@ CONFIG_PTP_1588_CLOCK_OCP=m
CONFIG_PTP_DFL_TOD=m
# end of PTP clock support
#
# DPLL device support
#
CONFIG_DPLL=y
CONFIG_ZL3073X=m
CONFIG_ZL3073X_I2C=m
CONFIG_ZL3073X_SPI=m
# end of DPLL device support
CONFIG_PINCTRL=y
CONFIG_PINMUX=y
CONFIG_PINCONF=y
@@ -5064,14 +5024,12 @@ CONFIG_PINCTRL_TIGERLAKE=m
#
# end of Renesas pinctrl drivers
CONFIG_GPIOLIB_LEGACY=y
CONFIG_GPIOLIB=y
CONFIG_GPIOLIB_FASTPATH_LIMIT=512
CONFIG_GPIO_ACPI=y
CONFIG_GPIOLIB_IRQCHIP=y
# CONFIG_DEBUG_GPIO is not set
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_SYSFS_LEGACY=y
CONFIG_GPIO_CDEV=y
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_GENERIC=m
@@ -5814,9 +5772,6 @@ CONFIG_MFD_AXP20X=m
CONFIG_MFD_AXP20X_I2C=m
CONFIG_MFD_CGBC=m
CONFIG_MFD_CROS_EC_DEV=m
CONFIG_MFD_CS40L50_CORE=m
CONFIG_MFD_CS40L50_I2C=m
CONFIG_MFD_CS40L50_SPI=m
# CONFIG_MFD_CS42L43_I2C is not set
CONFIG_MFD_MADERA=m
CONFIG_MFD_MADERA_I2C=m
@@ -5929,6 +5884,9 @@ CONFIG_MFD_WM8350_I2C=y
CONFIG_MFD_WM8994=m
CONFIG_MFD_ATC260X=m
CONFIG_MFD_ATC260X_I2C=m
CONFIG_MFD_CS40L50_CORE=m
CONFIG_MFD_CS40L50_I2C=m
CONFIG_MFD_CS40L50_SPI=m
CONFIG_RAVE_SP_CORE=m
CONFIG_MFD_INTEL_M10_BMC_CORE=m
CONFIG_MFD_INTEL_M10_BMC_SPI=m
@@ -6693,13 +6651,16 @@ CONFIG_VIDEO_ET8EK8=m
CONFIG_VIDEO_THP7312=m
# end of Camera ISPs
CONFIG_VIDEO_CAMERA_LENS=y
#
# Lens drivers
#
CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_DW9714=m
# CONFIG_VIDEO_DW9719 is not set
CONFIG_VIDEO_DW9768=m
CONFIG_VIDEO_DW9807_VCM=m
# end of Lens drivers
#
# Flash devices
@@ -6819,7 +6780,6 @@ CONFIG_VIDEO_THS7303=m
#
# Video serializers and deserializers
#
CONFIG_VIDEO_MAX96717=m
# end of Video serializers and deserializers
#
@@ -7131,7 +7091,6 @@ CONFIG_DRM_DISPLAY_DP_HELPER=y
CONFIG_DRM_DISPLAY_DP_TUNNEL=y
CONFIG_DRM_DISPLAY_DSC_HELPER=y
CONFIG_DRM_DISPLAY_HDCP_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_CEC_NOTIFIER_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
CONFIG_DRM_TTM=m
CONFIG_DRM_EXEC=m
@@ -7382,6 +7341,7 @@ CONFIG_FB_SSD1307=m
CONFIG_FB_SM712=m
CONFIG_FB_CORE=y
CONFIG_FB_NOTIFY=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DEVICE=y
CONFIG_FB_DDC=m
CONFIG_FB_CFB_FILLRECT=y
@@ -7460,7 +7420,6 @@ CONFIG_BACKLIGHT_RAVE_SP=m
CONFIG_VGASTATE=m
CONFIG_VIDEOMODE_HELPERS=y
CONFIG_HDMI=y
CONFIG_FIRMWARE_EDID=y
#
# Console display driver support
@@ -7481,7 +7440,6 @@ CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
# CONFIG_LOGO_LINUX_CLUT224 is not set
# CONFIG_TRACE_GPU_MEM is not set
# end of Graphics support
CONFIG_DRM_ACCEL=y
@@ -7672,54 +7630,14 @@ CONFIG_SND_YMFPCI=m
# HD-Audio
#
CONFIG_SND_HDA=m
CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_ACPI=m
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
# CONFIG_SND_HDA_CTL_DEV_ID is not set
CONFIG_SND_HDA_PREALLOC_SIZE=0
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_ACPI=m
CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_CODEC_ANALOG=m
CONFIG_SND_HDA_CODEC_SIGMATEL=m
CONFIG_SND_HDA_CODEC_VIA=m
CONFIG_SND_HDA_CODEC_CONEXANT=m
CONFIG_SND_HDA_CODEC_SENARYTECH=m
CONFIG_SND_HDA_CODEC_CA0110=m
CONFIG_SND_HDA_CODEC_CA0132=m
CONFIG_SND_HDA_CODEC_CA0132_DSP=y
CONFIG_SND_HDA_CODEC_CMEDIA=m
CONFIG_SND_HDA_CODEC_CM9825=m
CONFIG_SND_HDA_CODEC_SI3054=m
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_CODEC_REALTEK=m
CONFIG_SND_HDA_CODEC_REALTEK_LIB=m
CONFIG_SND_HDA_CODEC_ALC260=m
CONFIG_SND_HDA_CODEC_ALC262=m
CONFIG_SND_HDA_CODEC_ALC268=m
CONFIG_SND_HDA_CODEC_ALC269=m
CONFIG_SND_HDA_CODEC_ALC662=m
CONFIG_SND_HDA_CODEC_ALC680=m
CONFIG_SND_HDA_CODEC_ALC861=m
CONFIG_SND_HDA_CODEC_ALC861VD=m
CONFIG_SND_HDA_CODEC_ALC880=m
CONFIG_SND_HDA_CODEC_ALC882=m
CONFIG_SND_HDA_CODEC_CIRRUS=m
CONFIG_SND_HDA_CODEC_CS420X=m
CONFIG_SND_HDA_CODEC_CS421X=m
CONFIG_SND_HDA_CODEC_CS8409=m
CONFIG_SND_HDA_CODEC_HDMI=m
CONFIG_SND_HDA_CODEC_HDMI_GENERIC=m
CONFIG_SND_HDA_CODEC_HDMI_SIMPLE=m
CONFIG_SND_HDA_CODEC_HDMI_INTEL=m
CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM=y
CONFIG_SND_HDA_CODEC_HDMI_ATI=m
CONFIG_SND_HDA_CODEC_HDMI_NVIDIA=m
CONFIG_SND_HDA_CODEC_HDMI_NVIDIA_MCP=m
CONFIG_SND_HDA_CODEC_HDMI_TEGRA=m
CONFIG_SND_HDA_SCODEC_CS35L41=m
CONFIG_SND_HDA_SCODEC_COMPONENT=m
CONFIG_SND_HDA_SCODEC_CS35L41_I2C=m
@@ -7728,17 +7646,36 @@ CONFIG_SND_HDA_SCODEC_CS35L41_SPI=m
# CONFIG_SND_HDA_SCODEC_CS35L56_SPI is not set
# CONFIG_SND_HDA_SCODEC_TAS2781_I2C is not set
# CONFIG_SND_HDA_SCODEC_TAS2781_SPI is not set
CONFIG_SND_HDA_CODEC_REALTEK=m
CONFIG_SND_HDA_CODEC_ANALOG=m
CONFIG_SND_HDA_CODEC_SIGMATEL=m
CONFIG_SND_HDA_CODEC_VIA=m
CONFIG_SND_HDA_CODEC_HDMI=m
CONFIG_SND_HDA_CODEC_CIRRUS=m
CONFIG_SND_HDA_CODEC_CS8409=m
CONFIG_SND_HDA_CODEC_CONEXANT=m
CONFIG_SND_HDA_CODEC_SENARYTECH=m
CONFIG_SND_HDA_CODEC_CA0110=m
CONFIG_SND_HDA_CODEC_CA0132=m
CONFIG_SND_HDA_CODEC_CA0132_DSP=y
CONFIG_SND_HDA_CODEC_CMEDIA=m
CONFIG_SND_HDA_CODEC_SI3054=m
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM=y
# CONFIG_SND_HDA_CTL_DEV_ID is not set
# end of HD-Audio
CONFIG_SND_HDA_CORE=m
CONFIG_SND_HDA_DSP_LOADER=y
CONFIG_SND_HDA_COMPONENT=y
CONFIG_SND_HDA_I915=y
CONFIG_SND_HDA_EXT_CORE=m
CONFIG_SND_HDA_PREALLOC_SIZE=0
CONFIG_SND_INTEL_NHLT=y
CONFIG_SND_INTEL_DSP_CONFIG=m
CONFIG_SND_INTEL_SOUNDWIRE_ACPI=m
CONFIG_SND_INTEL_BYT_PREFER_SOF=y
# end of HD-Audio
CONFIG_SND_SPI=y
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
@@ -7779,17 +7716,9 @@ CONFIG_SND_SOC_COMPRESS=y
CONFIG_SND_SOC_TOPOLOGY=y
CONFIG_SND_SOC_ACPI=m
CONFIG_SND_SOC_USB=m
#
# Analog Devices
#
CONFIG_SND_SOC_ADI=m
CONFIG_SND_SOC_ADI_AXI_I2S=m
CONFIG_SND_SOC_ADI_AXI_SPDIF=m
# end of Analog Devices
#
# AMD
#
CONFIG_SND_SOC_AMD_ACP=m
CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m
CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
@@ -7824,43 +7753,13 @@ CONFIG_SND_SOC_AMD_ACP63_TOPLEVEL=m
CONFIG_SND_SOC_AMD_SOUNDWIRE_LINK_BASELINE=m
CONFIG_SND_SOC_AMD_PS=m
CONFIG_SND_SOC_AMD_PS_MACH=m
# end of AMD
#
# Apple
#
# end of Apple
#
# Atmel
#
# end of Atmel
#
# Au1x
#
# end of Au1x
#
# Broadcom
#
CONFIG_SND_ATMEL_SOC=m
CONFIG_SND_BCM63XX_I2S_WHISTLER=m
# end of Broadcom
#
# Cirrus Logic
#
# end of Cirrus Logic
#
# DesignWare
#
CONFIG_SND_DESIGNWARE_I2S=m
# CONFIG_SND_DESIGNWARE_PCM is not set
# end of DesignWare
#
# Freescale
# SoC Audio for Freescale CPUs
#
#
@@ -7878,38 +7777,17 @@ CONFIG_SND_SOC_FSL_EASRC=m
CONFIG_SND_SOC_FSL_XCVR=m
CONFIG_SND_SOC_FSL_UTILS=m
CONFIG_SND_SOC_IMX_AUDMUX=m
# end of Freescale
# end of SoC Audio for Freescale CPUs
#
# Google
#
CONFIG_SND_SOC_CHV3_I2S=m
# end of Google
#
# Hisilicon
#
CONFIG_SND_I2S_HI6210_I2S=m
# end of Hisilicon
#
# JZ4740
# SoC Audio for Loongson CPUs
#
# end of JZ4740
# end of SoC Audio for Loongson CPUs
#
# Kirkwood
#
# end of Kirkwood
#
# Loongson
#
# end of Loongson
#
# Intel
#
# CONFIG_SND_SOC_IMG is not set
CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y
CONFIG_SND_SOC_INTEL_CATPT=m
CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
@@ -7942,7 +7820,6 @@ CONFIG_SND_SOC_INTEL_AVS_MACH_RT274=m
CONFIG_SND_SOC_INTEL_AVS_MACH_RT286=m
CONFIG_SND_SOC_INTEL_AVS_MACH_RT298=m
CONFIG_SND_SOC_INTEL_AVS_MACH_RT5514=m
CONFIG_SND_SOC_INTEL_AVS_MACH_RT5640=m
# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5663 is not set
CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682=m
CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567=m
@@ -7985,62 +7862,9 @@ CONFIG_SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH=m
CONFIG_SND_SOC_INTEL_SOF_DA7219_MACH=m
CONFIG_SND_SOC_INTEL_SOF_SSP_AMP_MACH=m
CONFIG_SND_SOC_INTEL_EHL_RT5660_MACH=m
# end of Intel
#
# Mediatek
#
CONFIG_SND_SOC_MTK_BTCVSD=m
# end of Mediatek
#
# PXA
#
# end of PXA
#
# SoundWire (SDCA)
#
CONFIG_SND_SOC_SDCA=m
CONFIG_SND_SOC_SDCA_HID=y
CONFIG_SND_SOC_SDCA_IRQ=y
CONFIG_SND_SOC_SDCA_OPTIONAL=m
# end of SoundWire (SDCA)
#
# ST SPEAr
#
# end of ST SPEAr
#
# Spreadtrum
#
# end of Spreadtrum
#
# STMicroelectronics STM32
#
# end of STMicroelectronics STM32
#
# Tegra
#
# end of Tegra
#
# Xilinx
#
CONFIG_SND_SOC_XILINX_I2S=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
# end of Xilinx
#
# Xtensa
#
CONFIG_SND_SOC_XTFPGA_I2S=m
# end of Xtensa
CONFIG_SND_SOC_SOF_TOPLEVEL=y
CONFIG_SND_SOC_SOF_PCI_DEV=m
CONFIG_SND_SOC_SOF_PCI=m
@@ -8102,6 +7926,16 @@ CONFIG_SND_SOC_SOF_HDA=m
CONFIG_SND_SOC_SOF_HDA_PROBES=m
CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE=m
CONFIG_SND_SOC_SOF_XTENSA=m
#
# STMicroelectronics STM32 SOC audio support
#
# end of STMicroelectronics STM32 SOC audio support
CONFIG_SND_SOC_XILINX_I2S=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
CONFIG_SND_SOC_XTFPGA_I2S=m
CONFIG_SND_SOC_I2C_AND_SPI=m
#
@@ -8275,7 +8109,6 @@ CONFIG_SND_SOC_RT5682S=m
CONFIG_SND_SOC_RT9120=m
CONFIG_SND_SOC_RT9123=m
CONFIG_SND_SOC_RT9123P=m
CONFIG_SND_SOC_RTQ9124=m
CONFIG_SND_SOC_RTQ9128=m
CONFIG_SND_SOC_SGTL5000=m
CONFIG_SND_SOC_SI476X=m
@@ -8386,13 +8219,8 @@ CONFIG_SND_SOC_LPASS_RX_MACRO=m
CONFIG_SND_SOC_LPASS_TX_MACRO=m
# end of CODEC drivers
#
# Generic drivers
#
CONFIG_SND_SIMPLE_CARD_UTILS=m
CONFIG_SND_SIMPLE_CARD=m
# end of Generic drivers
CONFIG_SND_X86=y
CONFIG_HDMI_LPE_AUDIO=m
CONFIG_SND_SYNTH_EMUX=m
@@ -9179,6 +9007,7 @@ CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y
CONFIG_INFINIBAND_VIRT_DMA=y
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_IRDMA=m
CONFIG_MLX4_INFINIBAND=m
@@ -9188,6 +9017,7 @@ CONFIG_INFINIBAND_MTHCA=m
CONFIG_INFINIBAND_OCRDMA=m
CONFIG_INFINIBAND_USNIC=m
CONFIG_INFINIBAND_VMWARE_PVRDMA=m
CONFIG_RDMA_SIW=m
CONFIG_INFINIBAND_IPOIB=m
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG is not set
@@ -9268,6 +9098,7 @@ CONFIG_RTC_DRV_ISL1208=m
CONFIG_RTC_DRV_ISL12022=m
CONFIG_RTC_DRV_X1205=m
CONFIG_RTC_DRV_PCF8523=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF85363=m
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
@@ -9317,7 +9148,6 @@ CONFIG_RTC_I2C_AND_SPI=y
CONFIG_RTC_DRV_DS3232=m
CONFIG_RTC_DRV_DS3232_HWMON=y
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_RV3029C2=m
CONFIG_RTC_DRV_RV3029_HWMON=y
CONFIG_RTC_DRV_RX6110=m
@@ -9719,7 +9549,6 @@ CONFIG_DVB_AV7110=m
CONFIG_DVB_AV7110_OSD=y
CONFIG_DVB_SP8870=m
CONFIG_VIDEO_IPU3_IMGU=m
# CONFIG_VIDEO_INTEL_IPU7 is not set
#
# StarFive media platform drivers
@@ -9807,13 +9636,14 @@ CONFIG_WILCO_EC_TELEMETRY=m
# CONFIG_SURFACE_PLATFORMS is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACPI_WMI=m
# CONFIG_ACPI_WMI_LEGACY_DEVICE_NAMES is not set
CONFIG_WMI_BMOF=m
CONFIG_HUAWEI_WMI=m
CONFIG_MXM_WMI=m
CONFIG_NVIDIA_WMI_EC_BACKLIGHT=m
CONFIG_XIAOMI_WMI=m
CONFIG_GIGABYTE_WMI=m
CONFIG_YOGABOOK=m
# CONFIG_YT2_1380 is not set
CONFIG_ACERHDF=m
CONFIG_ACER_WIRELESS=m
CONFIG_ACER_WMI=m
@@ -9827,7 +9657,6 @@ CONFIG_ACER_WMI=m
CONFIG_AMD_PMC=m
CONFIG_AMD_MP2_STB=y
# CONFIG_AMD_HFI is not set
# CONFIG_AMD_WBRF is not set
CONFIG_ADV_SWBUTTON=m
CONFIG_APPLE_GMUX=m
@@ -9871,7 +9700,18 @@ CONFIG_TC1100_WMI=m
CONFIG_HP_BIOSCFG=m
CONFIG_WIRELESS_HOTKEY=m
CONFIG_IBM_RTL=m
CONFIG_IDEAPAD_LAPTOP=m
CONFIG_LENOVO_WMI_HOTKEY_UTILITIES=m
CONFIG_LENOVO_YMC=m
CONFIG_SENSORS_HDAPS=m
CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y
# CONFIG_THINKPAD_ACPI_DEBUG is not set
# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
CONFIG_THINKPAD_LMI=m
CONFIG_INTEL_ATOMISP2_PDX86=y
CONFIG_INTEL_ATOMISP2_LED=m
CONFIG_INTEL_SAR_INT1092=m
@@ -9881,7 +9721,6 @@ CONFIG_INTEL_PMC_SSRAM_TELEMETRY=m
CONFIG_INTEL_PMT_CLASS=m
CONFIG_INTEL_PMT_TELEMETRY=m
CONFIG_INTEL_PMT_CRASHLOG=m
CONFIG_INTEL_PMT_DISCOVERY=m
CONFIG_INTEL_WMI=y
CONFIG_INTEL_WMI_SBL_FW_UPDATE=m
CONFIG_INTEL_WMI_THUNDERBOLT=m
@@ -9898,22 +9737,6 @@ CONFIG_INTEL_PUNIT_IPC=m
CONFIG_INTEL_RST=m
CONFIG_INTEL_SMARTCONNECT=m
CONFIG_INTEL_VSEC=m
CONFIG_IDEAPAD_LAPTOP=m
CONFIG_LENOVO_WMI_HOTKEY_UTILITIES=m
# CONFIG_LENOVO_WMI_CAMERA is not set
CONFIG_LENOVO_YMC=m
CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y
# CONFIG_THINKPAD_ACPI_DEBUG is not set
# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
CONFIG_THINKPAD_LMI=m
CONFIG_YOGABOOK=m
# CONFIG_YT2_1380 is not set
# CONFIG_LENOVO_WMI_GAMEZONE is not set
# CONFIG_LENOVO_WMI_TUNING is not set
# CONFIG_ACPI_QUICKSTART is not set
# CONFIG_MEEGOPAD_ANX7428 is not set
CONFIG_MSI_EC=m
@@ -9941,6 +9764,7 @@ CONFIG_TOPSTAR_LAPTOP=m
CONFIG_SERIAL_MULTI_INSTANTIATE=m
# CONFIG_TOUCHSCREEN_DMI is not set
CONFIG_INSPUR_PLATFORM_PROFILE=m
# CONFIG_LENOVO_WMI_CAMERA is not set
# CONFIG_DASHARO_ACPI is not set
CONFIG_FW_ATTR_CLASS=m
CONFIG_INTEL_IMR=y
@@ -10248,9 +10072,7 @@ CONFIG_STK8BA50=m
CONFIG_AD_SIGMA_DELTA=m
CONFIG_AD4000=m
CONFIG_AD4030=m
# CONFIG_AD4080 is not set
CONFIG_AD4130=m
# CONFIG_AD4170_4 is not set
CONFIG_AD4695=m
CONFIG_AD4851=m
CONFIG_AD7091R=m
@@ -10266,7 +10088,6 @@ CONFIG_AD7291=m
CONFIG_AD7292=m
CONFIG_AD7298=m
CONFIG_AD7380=m
# CONFIG_AD7405 is not set
CONFIG_AD7476=m
CONFIG_AD7606=m
CONFIG_AD7606_IFACE_PARALLEL=m
@@ -10421,7 +10242,6 @@ CONFIG_VZ89X=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
# CONFIG_IIO_CROS_EC_ACTIVITY is not set
#
# Hid Sensor IIO Common
@@ -10838,7 +10658,6 @@ CONFIG_AS3935=m
# Proximity and distance sensors
#
CONFIG_CROS_EC_MKBP_PROXIMITY=m
# CONFIG_D3323AA is not set
CONFIG_HX9023S=m
# CONFIG_IRSD200 is not set
CONFIG_ISL29501=m
@@ -11065,6 +10884,7 @@ CONFIG_MOST_CDEV=m
CONFIG_MOST_SND=m
# CONFIG_PECI is not set
CONFIG_HTE=y
CONFIG_DPLL=y
# end of Device Drivers
#
@@ -11216,8 +11036,6 @@ CONFIG_NTFS_FS=m
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_VMCORE=y
# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_PROC_CHILDREN=y
@@ -11228,7 +11046,6 @@ CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
# CONFIG_TMPFS_QUOTA is not set
CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_CONFIGFS_FS=m
@@ -11781,6 +11598,8 @@ CONFIG_CRYPTO_USER_API_AEAD=m
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
# end of Userspace interface
CONFIG_CRYPTO_HASH_INFO=y
#
# Accelerated Cryptographic Algorithms for CPU (x86)
#
@@ -11859,22 +11678,10 @@ CONFIG_GENERIC_IOMAP=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
CONFIG_CRC7=m
CONFIG_CRC8=m
CONFIG_CRC16=y
CONFIG_CRC_CCITT=y
CONFIG_CRC_ITU_T=m
CONFIG_CRC_T10DIF=y
CONFIG_CRC_T10DIF_ARCH=y
CONFIG_CRC32=y
CONFIG_CRC32_ARCH=y
CONFIG_CRC64=y
CONFIG_CRC_OPTIMIZATIONS=y
#
# Crypto library routines
#
CONFIG_CRYPTO_HASH_INFO=y
CONFIG_CRYPTO_LIB_UTILS=y
CONFIG_CRYPTO_LIB_AES=y
CONFIG_CRYPTO_LIB_ARC4=m
@@ -11892,10 +11699,23 @@ CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
CONFIG_CRYPTO_LIB_SHA1=y
CONFIG_CRYPTO_LIB_SHA256=y
CONFIG_CRYPTO_LIB_SHA512=y
CONFIG_CRYPTO_LIB_SHA256_GENERIC=y
CONFIG_CRYPTO_LIB_SM3=m
# end of Crypto library routines
CONFIG_CRC_CCITT=y
CONFIG_CRC16=y
CONFIG_CRC_T10DIF=y
CONFIG_ARCH_HAS_CRC_T10DIF=y
CONFIG_CRC_T10DIF_ARCH=y
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=y
CONFIG_ARCH_HAS_CRC32=y
CONFIG_CRC32_ARCH=y
CONFIG_CRC64=y
CONFIG_CRC7=m
CONFIG_CRC8=m
CONFIG_CRC_OPTIMIZATIONS=y
CONFIG_XXHASH=y
CONFIG_AUDIT_GENERIC=y
# CONFIG_RANDOM32_SELFTEST is not set
@@ -12116,9 +11936,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_DEBUG_PAGE_REF is not set
# CONFIG_DEBUG_RODATA_TEST is not set
CONFIG_ARCH_HAS_DEBUG_WX=y
# CONFIG_DEBUG_WX is not set
CONFIG_ARCH_HAS_PTDUMP=y
# CONFIG_PTDUMP_DEBUGFS is not set
CONFIG_HAVE_DEBUG_KMEMLEAK=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_OBJECTS is not set
@@ -12134,7 +11951,6 @@ CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
# CONFIG_DEBUG_KMAP_LOCAL is not set
CONFIG_ARCH_SUPPORTS_KMAP_LOCAL_FORCE_MAP=y
# CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is not set
# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_MEM_ALLOC_PROFILING is not set
@@ -12253,6 +12069,7 @@ CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
CONFIG_HAVE_DYNAMIC_FTRACE_NO_PATCHABLE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_FENTRY=y
CONFIG_HAVE_C_RECORDMCOUNT=y
@@ -12267,7 +12084,6 @@ CONFIG_TRACING=y
CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
CONFIG_TRACEFS_AUTOMOUNT_DEPRECATED=y
# CONFIG_BOOTTIME_TRACING is not set
CONFIG_FUNCTION_TRACER=y
CONFIG_FUNCTION_GRAPH_TRACER=y
@@ -12294,11 +12110,11 @@ CONFIG_BLK_DEV_IO_TRACE=y
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
CONFIG_EPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
CONFIG_DYNAMIC_EVENTS=y
CONFIG_PROBE_EVENTS=y
# CONFIG_BPF_KPROBE_OVERRIDE is not set
CONFIG_FTRACE_MCOUNT_RECORD=y
CONFIG_FTRACE_MCOUNT_USE_CC=y
CONFIG_SYNTH_EVENTS=y
# CONFIG_USER_EVENTS is not set
@@ -1,26 +1,25 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/riscv 6.17.6 Kernel Configuration
# Linux/riscv 6.16.3 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 14.3.0"
CONFIG_CC_VERSION_TEXT="gcc (Debian 12.2.0-14+deb12u1) 12.2.0"
CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=140300
CONFIG_GCC_VERSION=120200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24400
CONFIG_AS_VERSION=24000
CONFIG_LD_IS_BFD=y
CONFIG_LD_VERSION=24400
CONFIG_LD_VERSION=24000
CONFIG_LLD_VERSION=0
CONFIG_RUSTC_VERSION=0
CONFIG_RUSTC_LLVM_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_GCC_ASM_GOTO_OUTPUT_BROKEN=y
CONFIG_TOOLS_SUPPORT_RELR=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
CONFIG_LD_CAN_USE_KEEP_IN_OVERLAY=y
CONFIG_PAHOLE_VERSION=129
CONFIG_PAHOLE_VERSION=0
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_TABLE_SORT=y
CONFIG_THREAD_INFO_IN_TASK=y
@@ -91,7 +90,6 @@ CONFIG_NO_HZ_IDLE=y
# CONFIG_NO_HZ_FULL is not set
# CONFIG_NO_HZ is not set
CONFIG_HIGH_RES_TIMERS=y
# CONFIG_POSIX_AUX_CLOCKS is not set
# end of Timers subsystem
CONFIG_BPF=y
@@ -140,7 +138,6 @@ CONFIG_TREE_RCU=y
CONFIG_TREE_SRCU=y
CONFIG_TASKS_RCU_GENERIC=y
CONFIG_NEED_TASKS_RCU=y
CONFIG_TASKS_RUDE_RCU=y
CONFIG_TASKS_TRACE_RCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_NEED_SEGCBLIST=y
@@ -158,7 +155,6 @@ CONFIG_GENERIC_SCHED_CLOCK=y
# Scheduler features
#
# CONFIG_UCLAMP_TASK is not set
# CONFIG_SCHED_PROXY_EXEC is not set
# end of Scheduler features
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
@@ -181,7 +177,6 @@ CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
CONFIG_GROUP_SCHED_WEIGHT=y
CONFIG_GROUP_SCHED_BANDWIDTH=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
@@ -243,7 +238,6 @@ CONFIG_ELF_CORE=y
# CONFIG_BASE_SMALL is not set
CONFIG_FUTEX=y
CONFIG_FUTEX_PI=y
CONFIG_FUTEX_PRIVATE_HASH=y
CONFIG_FUTEX_MPOL=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
@@ -252,13 +246,13 @@ CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_IO_URING=y
# CONFIG_IO_URING_MOCK_FILE is not set
CONFIG_ADVISE_SYSCALLS=y
CONFIG_MEMBARRIER=y
CONFIG_KCMP=y
CONFIG_RSEQ=y
# CONFIG_DEBUG_RSEQ is not set
CONFIG_CACHESTAT_SYSCALL=y
# CONFIG_PC104 is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_SELFTEST is not set
# CONFIG_KALLSYMS_ALL is not set
@@ -294,7 +288,6 @@ CONFIG_CRASH_DUMP=y
CONFIG_64BIT=y
CONFIG_RISCV=y
CONFIG_RUSTC_SUPPORTS_RISCV=y
CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE=y
CONFIG_RISCV_USE_LINKER_RELAXATION=y
CONFIG_ARCH_MMAP_RND_BITS_MIN=18
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8
@@ -319,7 +312,6 @@ CONFIG_RISCV_NONSTANDARD_CACHE_OPS=y
#
# SoC selection
#
CONFIG_ARCH_ANDES=y
CONFIG_ARCH_MICROCHIP_POLARFIRE=y
CONFIG_ARCH_MICROCHIP=y
CONFIG_ARCH_RENESAS=y
@@ -532,8 +524,6 @@ CONFIG_CPUFREQ_DT_PLATDEV=y
CONFIG_KVM_COMMON=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQ_ROUTING=y
CONFIG_HAVE_KVM_DIRTY_RING=y
CONFIG_HAVE_KVM_DIRTY_RING_ACQ_REL=y
CONFIG_KVM_MMIO=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_READONLY_MEM=y
@@ -585,8 +575,6 @@ CONFIG_CPU_MITIGATIONS=y
#
CONFIG_HOTPLUG_CORE_SYNC=y
CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
CONFIG_GENERIC_IRQ_ENTRY=y
CONFIG_GENERIC_SYSCALL=y
CONFIG_GENERIC_ENTRY=y
# CONFIG_KPROBES is not set
CONFIG_JUMP_LABEL=y
@@ -624,7 +612,7 @@ CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP=y
CONFIG_SECCOMP_FILTER=y
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_HAVE_ARCH_KSTACK_ERASE=y
CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
@@ -685,11 +673,7 @@ CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
# end of GCOV-based kernel profiling
CONFIG_HAVE_GCC_PLUGINS=y
CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT_8B=y
CONFIG_FUNCTION_ALIGNMENT=8
CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y
CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
CONFIG_FUNCTION_ALIGNMENT=0
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -861,11 +845,12 @@ CONFIG_CMA=y
CONFIG_CMA_DEBUGFS=y
# CONFIG_CMA_SYSFS is not set
CONFIG_CMA_AREAS=16
CONFIG_PAGE_BLOCK_MAX_ORDER=10
CONFIG_PAGE_BLOCK_ORDER=10
CONFIG_GENERIC_EARLY_IOREMAP=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
# CONFIG_IDLE_PAGE_TRACKING is not set
CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
CONFIG_ARCH_HAS_PTE_DEVMAP=y
CONFIG_ZONE_DMA32=y
CONFIG_ZONE_DEVICE=y
CONFIG_HMM_MIRROR=y
@@ -1013,7 +998,6 @@ CONFIG_BRIDGE_NETFILTER=y
CONFIG_NETFILTER_INGRESS=y
CONFIG_NETFILTER_EGRESS=y
CONFIG_NETFILTER_FAMILY_BRIDGE=y
CONFIG_NETFILTER_FAMILY_ARP=y
CONFIG_NETFILTER_BPF_LINK=y
# CONFIG_NETFILTER_NETLINK_ACCT is not set
# CONFIG_NETFILTER_NETLINK_QUEUE is not set
@@ -1029,6 +1013,7 @@ CONFIG_NF_CONNTRACK_PROCFS=y
# CONFIG_NF_CONNTRACK_TIMEOUT is not set
# CONFIG_NF_CONNTRACK_TIMESTAMP is not set
# CONFIG_NF_CONNTRACK_LABELS is not set
CONFIG_NF_CT_PROTO_DCCP=y
CONFIG_NF_CT_PROTO_SCTP=y
CONFIG_NF_CT_PROTO_UDPLITE=y
# CONFIG_NF_CONNTRACK_AMANDA is not set
@@ -1049,7 +1034,6 @@ CONFIG_NF_NAT_REDIRECT=y
CONFIG_NF_NAT_MASQUERADE=y
# CONFIG_NF_TABLES is not set
CONFIG_NETFILTER_XTABLES=y
CONFIG_NETFILTER_XTABLES_LEGACY=y
#
# Xtables combined modules
@@ -1064,28 +1048,25 @@ CONFIG_NETFILTER_XT_CONNMARK=y
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_HL=m
# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
# CONFIG_NETFILTER_XT_TARGET_HL is not set
# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
# CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set
# CONFIG_NETFILTER_XT_TARGET_LED is not set
# CONFIG_NETFILTER_XT_TARGET_LOG is not set
# CONFIG_NETFILTER_XT_TARGET_MARK is not set
CONFIG_NETFILTER_XT_NAT=y
CONFIG_NETFILTER_XT_TARGET_NETMAP=m
# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
CONFIG_NETFILTER_XT_TARGET_REDIRECT=y
CONFIG_NETFILTER_XT_TARGET_MASQUERADE=y
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
CONFIG_NETFILTER_XT_TARGET_TPROXY=m
CONFIG_NETFILTER_XT_TARGET_TRACE=m
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
# CONFIG_NETFILTER_XT_TARGET_SECMARK is not set
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
#
# Xtables matches
@@ -1193,7 +1174,7 @@ CONFIG_IP_VS_NFCT=y
CONFIG_NF_DEFRAG_IPV4=y
CONFIG_IP_NF_IPTABLES_LEGACY=y
# CONFIG_NF_SOCKET_IPV4 is not set
CONFIG_NF_TPROXY_IPV4=m
# CONFIG_NF_TPROXY_IPV4 is not set
# CONFIG_NF_DUP_IPV4 is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -1201,22 +1182,22 @@ CONFIG_NF_REJECT_IPV4=m
CONFIG_IP_NF_IPTABLES=y
# CONFIG_IP_NF_MATCH_AH is not set
# CONFIG_IP_NF_MATCH_ECN is not set
CONFIG_IP_NF_MATCH_RPFILTER=m
# CONFIG_IP_NF_MATCH_RPFILTER is not set
# CONFIG_IP_NF_MATCH_TTL is not set
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=m
# CONFIG_IP_NF_TARGET_SYNPROXY is not set
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_NETMAP=m
# CONFIG_IP_NF_TARGET_NETMAP is not set
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_SECURITY=m
# CONFIG_IP_NF_TARGET_ECN is not set
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
# CONFIG_IP_NF_SECURITY is not set
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
# CONFIG_IP_NF_ARPFILTER is not set
CONFIG_IP_NF_ARP_MANGLE=m
# end of IP: Netfilter Configuration
@@ -1225,7 +1206,7 @@ CONFIG_IP_NF_ARP_MANGLE=m
#
CONFIG_IP6_NF_IPTABLES_LEGACY=m
# CONFIG_NF_SOCKET_IPV6 is not set
CONFIG_NF_TPROXY_IPV6=m
# CONFIG_NF_TPROXY_IPV6 is not set
# CONFIG_NF_DUP_IPV6 is not set
CONFIG_NF_REJECT_IPV6=m
CONFIG_NF_LOG_IPV6=m
@@ -1237,19 +1218,19 @@ CONFIG_IP6_NF_IPTABLES=m
# CONFIG_IP6_NF_MATCH_HL is not set
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
# CONFIG_IP6_NF_MATCH_MH is not set
CONFIG_IP6_NF_MATCH_RPFILTER=m
# CONFIG_IP6_NF_MATCH_RPFILTER is not set
# CONFIG_IP6_NF_MATCH_RT is not set
# CONFIG_IP6_NF_MATCH_SRH is not set
CONFIG_IP6_NF_TARGET_HL=m
# CONFIG_IP6_NF_TARGET_HL is not set
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
# CONFIG_IP6_NF_RAW is not set
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
CONFIG_IP6_NF_TARGET_NPT=m
# CONFIG_IP6_NF_TARGET_MASQUERADE is not set
# CONFIG_IP6_NF_TARGET_NPT is not set
# end of IPv6: Netfilter Configuration
CONFIG_NF_DEFRAG_IPV6=y
@@ -1321,7 +1302,6 @@ CONFIG_NET_SCHED=y
# CONFIG_NET_SCH_PIE is not set
# CONFIG_NET_SCH_PLUG is not set
# CONFIG_NET_SCH_ETS is not set
CONFIG_NET_SCH_DUALPI2=m
# CONFIG_NET_SCH_DEFAULT is not set
#
@@ -1543,7 +1523,6 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT_HOST is not set
# CONFIG_PCIE_RCAR_GEN4_HOST is not set
CONFIG_PCIE_FU740=y
CONFIG_PCIE_SOPHGO_DW=y
# end of DesignWare-based PCIe controllers
#
@@ -1593,8 +1572,6 @@ CONFIG_RAPIDIO_DISC_TIMEOUT=30
# CONFIG_RAPIDIO_RXS_GEN3 is not set
# end of RapidIO Switch drivers
# CONFIG_PC104 is not set
#
# Generic Driver Options
#
@@ -1704,7 +1681,6 @@ CONFIG_EFI_EARLYCON=y
# CONFIG_EFI_CUSTOM_SSDT_OVERLAYS is not set
# CONFIG_EFI_DISABLE_RUNTIME is not set
# CONFIG_EFI_COCO_SECRET is not set
# CONFIG_OVMF_DEBUG_LOG is not set
CONFIG_EFI_SBAT_FILE=""
# end of EFI (Extensible Firmware Interface) Support
@@ -1864,6 +1840,7 @@ CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
# CONFIG_BLK_DEV_DRBD is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
CONFIG_VIRTIO_BLK=y
# CONFIG_BLK_DEV_RBD is not set
@@ -1951,7 +1928,6 @@ CONFIG_EEPROM_93CX6=y
# CONFIG_PVPANIC is not set
# CONFIG_GP_PCI1XXXX is not set
# CONFIG_AMD_SBRMI_I2C is not set
# CONFIG_MISC_RP1 is not set
# end of Misc devices
#
@@ -2039,7 +2015,7 @@ CONFIG_SCSI_LOWLEVEL=y
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_PMCRAID is not set
# CONFIG_SCSI_PM8001 is not set
CONFIG_SCSI_VIRTIO=m
# CONFIG_SCSI_VIRTIO is not set
# CONFIG_SCSI_DH is not set
# end of SCSI device support
@@ -2284,7 +2260,6 @@ CONFIG_NET_VENDOR_BROADCOM=y
# CONFIG_BNX2X is not set
# CONFIG_SYSTEMPORT is not set
# CONFIG_BNXT is not set
CONFIG_BNGE=m
CONFIG_NET_VENDOR_CADENCE=y
CONFIG_MACB=y
# CONFIG_MACB_PCI is not set
@@ -2311,8 +2286,6 @@ CONFIG_NET_VENDOR_DEC=y
# CONFIG_NET_TULIP is not set
CONFIG_NET_VENDOR_DLINK=y
# CONFIG_DL2K is not set
CONFIG_SUNDANCE=m
# CONFIG_SUNDANCE_MMIO is not set
CONFIG_NET_VENDOR_EMULEX=y
# CONFIG_BE2NET is not set
CONFIG_NET_VENDOR_ENGLEDER=y
@@ -2463,11 +2436,8 @@ CONFIG_NET_VENDOR_VIA=y
# CONFIG_VIA_RHINE is not set
# CONFIG_VIA_VELOCITY is not set
CONFIG_NET_VENDOR_WANGXUN=y
CONFIG_LIBWX=m
# CONFIG_NGBE is not set
# CONFIG_TXGBE is not set
CONFIG_TXGBEVF=m
CONFIG_NGBEVF=m
CONFIG_NET_VENDOR_WIZNET=y
# CONFIG_WIZNET_W5100 is not set
# CONFIG_WIZNET_W5300 is not set
@@ -2479,7 +2449,6 @@ CONFIG_NET_VENDOR_XILINX=y
CONFIG_PHYLINK=y
CONFIG_PHYLIB=y
CONFIG_SWPHY=y
CONFIG_PHY_PACKAGE=m
# CONFIG_LED_TRIGGER_PHY is not set
CONFIG_OPEN_ALLIANCE_HELPERS=y
CONFIG_PHYLIB_LEDS=y
@@ -2872,7 +2841,6 @@ CONFIG_RTW88_LEDS=y
CONFIG_RTW89=m
CONFIG_RTW89_CORE=m
CONFIG_RTW89_PCI=m
CONFIG_RTW89_USB=m
CONFIG_RTW89_8851B=m
CONFIG_RTW89_8852A=m
CONFIG_RTW89_8852B_COMMON=m
@@ -2881,10 +2849,8 @@ CONFIG_RTW89_8852BT=m
CONFIG_RTW89_8852C=m
CONFIG_RTW89_8922A=m
CONFIG_RTW89_8851BE=m
CONFIG_RTW89_8851BU=m
CONFIG_RTW89_8852AE=m
CONFIG_RTW89_8852BE=m
CONFIG_RTW89_8852BU=m
CONFIG_RTW89_8852BTE=m
CONFIG_RTW89_8852CE=m
CONFIG_RTW89_8922AE=m
@@ -2993,6 +2959,7 @@ CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ADC=m
CONFIG_KEYBOARD_ADP5588=m
CONFIG_KEYBOARD_ADP5589=m
CONFIG_KEYBOARD_ATKBD=y
CONFIG_KEYBOARD_QT1050=m
CONFIG_KEYBOARD_QT1070=m
@@ -3436,7 +3403,6 @@ CONFIG_SPI_LJCA=m
# CONFIG_SPI_PCI1XXXX is not set
# CONFIG_SPI_PL022 is not set
# CONFIG_SPI_RSPI is not set
# CONFIG_SPI_RZV2H_RSPI is not set
# CONFIG_SPI_RZV2M_CSI is not set
# CONFIG_SPI_SC18IS602 is not set
# CONFIG_SPI_SH_MSIOF is not set
@@ -3469,7 +3435,6 @@ CONFIG_SPI_DYNAMIC=y
#
# SPI Offload triggers
#
CONFIG_SPI_OFFLOAD_TRIGGER_ADI_UTIL_SD=m
CONFIG_SPI_OFFLOAD_TRIGGER_PWM=m
# CONFIG_SPMI is not set
# CONFIG_HSI is not set
@@ -3486,15 +3451,6 @@ CONFIG_PTP_1588_CLOCK_OPTIONAL=y
#
# end of PTP clock support
#
# DPLL device support
#
CONFIG_DPLL=y
CONFIG_ZL3073X=m
CONFIG_ZL3073X_I2C=m
CONFIG_ZL3073X_SPI=m
# end of DPLL device support
CONFIG_PINCTRL=y
CONFIG_GENERIC_PINCTRL_GROUPS=y
CONFIG_PINMUX=y
@@ -3560,7 +3516,6 @@ CONFIG_PINCTRL_SUN20I_D1=y
# CONFIG_PINCTRL_SUN50I_H616_R is not set
# CONFIG_PINCTRL_SUN55I_A523 is not set
# CONFIG_PINCTRL_SUN55I_A523_R is not set
CONFIG_GPIOLIB_LEGACY=y
CONFIG_GPIOLIB=y
CONFIG_GPIOLIB_FASTPATH_LIMIT=512
CONFIG_OF_GPIO=y
@@ -3568,7 +3523,6 @@ CONFIG_GPIO_ACPI=y
CONFIG_GPIOLIB_IRQCHIP=y
# CONFIG_DEBUG_GPIO is not set
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_SYSFS_LEGACY=y
CONFIG_GPIO_CDEV=y
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_GENERIC=y
@@ -3678,7 +3632,6 @@ CONFIG_POWER_RESET_SYSCON_POWEROFF=y
# CONFIG_NVMEM_REBOOT_MODE is not set
CONFIG_POWER_SEQUENCING=m
CONFIG_POWER_SEQUENCING_QCOM_WCN=m
# CONFIG_POWER_SEQUENCING_TH1520_GPU is not set
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
CONFIG_POWER_SUPPLY_HWMON=y
@@ -4010,12 +3963,9 @@ CONFIG_MFD_CORE=y
# CONFIG_MFD_AC100 is not set
# CONFIG_MFD_AXP20X_I2C is not set
# CONFIG_MFD_AXP20X_RSB is not set
CONFIG_MFD_CS40L50_CORE=m
CONFIG_MFD_CS40L50_I2C=m
CONFIG_MFD_CS40L50_SPI=m
# CONFIG_MFD_CS42L43_I2C is not set
# CONFIG_MFD_LOCHNAGAR is not set
# CONFIG_MFD_MADERA is not set
# CONFIG_MFD_MAX5970 is not set
# CONFIG_PMIC_DA903X is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9052_I2C is not set
@@ -4038,7 +3988,6 @@ CONFIG_MFD_CS40L50_SPI=m
# CONFIG_MFD_88PM805 is not set
# CONFIG_MFD_88PM860X is not set
CONFIG_MFD_88PM886_PMIC=y
# CONFIG_MFD_MAX5970 is not set
# CONFIG_MFD_MAX14577 is not set
# CONFIG_MFD_MAX77541 is not set
# CONFIG_MFD_MAX77620 is not set
@@ -4106,6 +4055,7 @@ CONFIG_MFD_SYSCON=y
# CONFIG_MFD_TC3589X is not set
# CONFIG_MFD_TQMX86 is not set
# CONFIG_MFD_VX855 is not set
# CONFIG_MFD_LOCHNAGAR is not set
# CONFIG_MFD_ARIZONA_I2C is not set
# CONFIG_MFD_ARIZONA_SPI is not set
# CONFIG_MFD_WM8400 is not set
@@ -4121,6 +4071,9 @@ CONFIG_MFD_ROHM_BD96801=m
# CONFIG_MFD_STMFX is not set
# CONFIG_MFD_ATC260X_I2C is not set
# CONFIG_MFD_QCOM_PM8008 is not set
CONFIG_MFD_CS40L50_CORE=m
CONFIG_MFD_CS40L50_I2C=m
CONFIG_MFD_CS40L50_SPI=m
# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
# CONFIG_MFD_RSMU_I2C is not set
# CONFIG_MFD_RSMU_SPI is not set
@@ -4180,7 +4133,6 @@ CONFIG_REGULATOR_BD96801=m
# CONFIG_REGULATOR_PWM is not set
# CONFIG_REGULATOR_RAA215300 is not set
# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_V2 is not set
CONFIG_REGULATOR_ROHM=m
# CONFIG_REGULATOR_RT4801 is not set
# CONFIG_REGULATOR_RT4803 is not set
@@ -4640,13 +4592,16 @@ CONFIG_VIDEO_VGXY61=m
# CONFIG_VIDEO_THP7312 is not set
# end of Camera ISPs
CONFIG_VIDEO_CAMERA_LENS=y
#
# Lens drivers
#
# CONFIG_VIDEO_AD5820 is not set
# CONFIG_VIDEO_AK7375 is not set
# CONFIG_VIDEO_DW9714 is not set
# CONFIG_VIDEO_DW9719 is not set
# CONFIG_VIDEO_DW9768 is not set
# CONFIG_VIDEO_DW9807_VCM is not set
# end of Lens drivers
#
# Flash devices
@@ -5044,8 +4999,6 @@ CONFIG_DRM_DISPLAY_DP_HELPER=y
CONFIG_DRM_DISPLAY_DSC_HELPER=y
CONFIG_DRM_DISPLAY_HDCP_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_AUDIO_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_CEC_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_CEC_NOTIFIER_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_HELPER=y
CONFIG_DRM_DISPLAY_HDMI_STATE_HELPER=y
CONFIG_DRM_TTM=m
@@ -5266,6 +5219,7 @@ CONFIG_FB=y
# CONFIG_FB_SM712 is not set
CONFIG_FB_CORE=y
CONFIG_FB_NOTIFY=y
# CONFIG_FIRMWARE_EDID is not set
CONFIG_FB_DEVICE=y
CONFIG_FB_SYS_FILLRECT=y
CONFIG_FB_SYS_COPYAREA=y
@@ -5325,7 +5279,6 @@ CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
# CONFIG_TRACE_GPU_MEM is not set
# end of Graphics support
# CONFIG_DRM_ACCEL is not set
@@ -5429,39 +5382,39 @@ CONFIG_SND_CTXFI=m
# HD-Audio
#
CONFIG_SND_HDA=m
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_ACPI=m
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_PREALLOC_SIZE=64
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_ACPI=m
# CONFIG_SND_HDA_CODEC_ANALOG is not set
# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
# CONFIG_SND_HDA_CODEC_VIA is not set
# CONFIG_SND_HDA_CODEC_CONEXANT is not set
# CONFIG_SND_HDA_CODEC_SENARYTECH is not set
# CONFIG_SND_HDA_CODEC_CA0110 is not set
# CONFIG_SND_HDA_CODEC_CA0132 is not set
# CONFIG_SND_HDA_CODEC_CMEDIA is not set
CONFIG_SND_HDA_CODEC_CM9825=m
# CONFIG_SND_HDA_CODEC_SI3054 is not set
CONFIG_SND_HDA_GENERIC=m
# CONFIG_SND_HDA_CODEC_REALTEK is not set
# CONFIG_SND_HDA_CODEC_CIRRUS is not set
# CONFIG_SND_HDA_CODEC_HDMI is not set
# CONFIG_SND_HDA_SCODEC_CS35L41_I2C is not set
# CONFIG_SND_HDA_SCODEC_CS35L41_SPI is not set
# CONFIG_SND_HDA_SCODEC_CS35L56_I2C is not set
# CONFIG_SND_HDA_SCODEC_CS35L56_SPI is not set
# CONFIG_SND_HDA_SCODEC_TAS2781_I2C is not set
# CONFIG_SND_HDA_SCODEC_TAS2781_SPI is not set
CONFIG_SND_HDA_CORE=m
CONFIG_SND_HDA_COMPONENT=y
# CONFIG_SND_HDA_CODEC_REALTEK is not set
# CONFIG_SND_HDA_CODEC_ANALOG is not set
# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
# CONFIG_SND_HDA_CODEC_VIA is not set
# CONFIG_SND_HDA_CODEC_HDMI is not set
# CONFIG_SND_HDA_CODEC_CIRRUS is not set
# CONFIG_SND_HDA_CODEC_CS8409 is not set
# CONFIG_SND_HDA_CODEC_CONEXANT is not set
# CONFIG_SND_HDA_CODEC_SENARYTECH is not set
# CONFIG_SND_HDA_CODEC_CA0110 is not set
# CONFIG_SND_HDA_CODEC_CA0132 is not set
# CONFIG_SND_HDA_CODEC_CMEDIA is not set
# CONFIG_SND_HDA_CODEC_SI3054 is not set
# CONFIG_SND_HDA_GENERIC is not set
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
# end of HD-Audio
CONFIG_SND_HDA_CORE=m
CONFIG_SND_HDA_COMPONENT=y
CONFIG_SND_HDA_PREALLOC_SIZE=64
CONFIG_SND_SPI=y
CONFIG_SND_USB=y
# CONFIG_SND_USB_AUDIO is not set
@@ -5486,56 +5439,15 @@ CONFIG_SND_FIREWIRE=y
# CONFIG_SND_FIREFACE is not set
CONFIG_SND_SOC=y
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
#
# Analog Devices
#
CONFIG_SND_SOC_ADI_AXI_I2S=m
CONFIG_SND_SOC_ADI_AXI_SPDIF=m
# end of Analog Devices
#
# AMD
#
# CONFIG_SND_SOC_ADI is not set
# CONFIG_SND_SOC_AMD_ACP is not set
# CONFIG_SND_AMD_ACP_CONFIG is not set
# end of AMD
#
# Apple
#
# end of Apple
#
# Atmel
#
# CONFIG_SND_SOC_MIKROE_PROTO is not set
# end of Atmel
#
# Au1x
#
# end of Au1x
#
# Broadcom
#
# CONFIG_SND_ATMEL_SOC is not set
# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
# end of Broadcom
#
# Cirrus Logic
#
# end of Cirrus Logic
#
# DesignWare
#
# CONFIG_SND_DESIGNWARE_I2S is not set
# end of DesignWare
#
# Freescale
# SoC Audio for Freescale CPUs
#
#
@@ -5551,116 +5463,51 @@ CONFIG_SND_SOC_ADI_AXI_SPDIF=m
# CONFIG_SND_SOC_FSL_XCVR is not set
# CONFIG_SND_SOC_FSL_RPMSG is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
# end of Freescale
# end of SoC Audio for Freescale CPUs
#
# Google
#
# CONFIG_SND_SOC_CHV3_I2S is not set
# end of Google
#
# Hisilicon
#
# CONFIG_SND_I2S_HI6210_I2S is not set
# end of Hisilicon
#
# JZ4740
# SoC Audio for Loongson CPUs
#
# end of JZ4740
# end of SoC Audio for Loongson CPUs
#
# Kirkwood
#
# end of Kirkwood
#
# Loongson
#
# end of Loongson
#
# Intel
#
# end of Intel
#
# Mediatek
#
# CONFIG_SND_SOC_IMG is not set
CONFIG_SND_SOC_MTK_BTCVSD=m
# end of Mediatek
#
# PXA
#
# end of PXA
#
# Renesas
# SoC Audio support for Renesas SoCs
#
# CONFIG_SND_SOC_SH4_FSI is not set
# CONFIG_SND_SOC_RCAR is not set
# CONFIG_SND_SOC_MSIOF is not set
# end of Renesas
# end of SoC Audio support for Renesas SoCs
#
# SoundWire (SDCA)
#
CONFIG_SND_SOC_SDCA_OPTIONAL=y
# end of SoundWire (SDCA)
#
# ST SPEAr
#
# end of ST SPEAr
#
# Spreadtrum
#
# end of Spreadtrum
#
# StarFive
#
# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
CONFIG_SND_SOC_STARFIVE=y
CONFIG_SND_SOC_JH7110_PWMDAC=y
CONFIG_SND_SOC_JH7110_TDM=y
# end of StarFive
#
# STMicroelectronics STM32
# STMicroelectronics STM32 SOC audio support
#
# end of STMicroelectronics STM32
# end of STMicroelectronics STM32 SOC audio support
#
# Allwinner
# Allwinner SoC Audio support
#
CONFIG_SND_SUN4I_CODEC=y
CONFIG_SND_SUN4I_I2S=y
CONFIG_SND_SUN4I_SPDIF=y
CONFIG_SND_SUN50I_DMIC=y
# end of Allwinner
# end of Allwinner SoC Audio support
#
# Tegra
#
# end of Tegra
#
# Xilinx
#
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
# end of Xilinx
#
# Xtensa
#
# CONFIG_SND_SOC_XTFPGA_I2S is not set
# end of Xtensa
# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
CONFIG_SND_SOC_I2C_AND_SPI=y
#
@@ -5783,7 +5630,6 @@ CONFIG_SND_SOC_PCM6240=m
# CONFIG_SND_SOC_RT9120 is not set
# CONFIG_SND_SOC_RT9123 is not set
# CONFIG_SND_SOC_RT9123P is not set
CONFIG_SND_SOC_RTQ9124=m
# CONFIG_SND_SOC_RTQ9128 is not set
# CONFIG_SND_SOC_SGTL5000 is not set
# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
@@ -5876,16 +5722,11 @@ CONFIG_SND_SOC_WM8960=y
# CONFIG_SND_SOC_LPASS_TX_MACRO is not set
# end of CODEC drivers
#
# Generic drivers
#
CONFIG_SND_SIMPLE_CARD_UTILS=y
CONFIG_SND_SIMPLE_CARD=y
CONFIG_SND_AUDIO_GRAPH_CARD=y
# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
# CONFIG_SND_TEST_COMPONENT is not set
# end of Generic drivers
# CONFIG_SND_VIRTIO is not set
CONFIG_AC97_BUS=m
CONFIG_HID_SUPPORT=y
@@ -6564,6 +6405,7 @@ CONFIG_RTC_DRV_88PM886=m
# CONFIG_RTC_DRV_ISL12026 is not set
# CONFIG_RTC_DRV_X1205 is not set
# CONFIG_RTC_DRV_PCF8523 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
# CONFIG_RTC_DRV_PCF85363 is not set
# CONFIG_RTC_DRV_PCF8563 is not set
# CONFIG_RTC_DRV_PCF8583 is not set
@@ -6606,7 +6448,6 @@ CONFIG_RTC_I2C_AND_SPI=y
#
# CONFIG_RTC_DRV_DS3232 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
# CONFIG_RTC_DRV_RV3029C2 is not set
# CONFIG_RTC_DRV_RX6110 is not set
@@ -6657,14 +6498,12 @@ CONFIG_DMA_ACPI=y
CONFIG_DMA_OF=y
# CONFIG_ALTERA_MSGDMA is not set
# CONFIG_AMBA_PL08X is not set
# CONFIG_AT_XDMAC is not set
# CONFIG_DMA_SUN6I is not set
CONFIG_DW_AXI_DMAC=y
# CONFIG_FSL_EDMA is not set
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_PL330_DMA is not set
# CONFIG_PLX_DMA is not set
# CONFIG_SOPHGO_CV1800B_DMAMUX is not set
# CONFIG_XILINX_DMA is not set
# CONFIG_XILINX_XDMA is not set
# CONFIG_XILINX_ZYNQMP_DPDMA is not set
@@ -7027,15 +6866,9 @@ CONFIG_SUNXI_SRAM=y
#
# end of Qualcomm PM Domains
#
# Renesas PM Domains
#
# end of Renesas PM Domains
CONFIG_JH71XX_PMU=y
# CONFIG_SUN20I_PPU is not set
# CONFIG_SUN50I_H6_PRCM_PPU is not set
CONFIG_SUN55I_PCK600=y
# CONFIG_TH1520_PM_DOMAINS is not set
# end of PM Domains
@@ -7144,9 +6977,7 @@ CONFIG_IIO_BACKEND=m
CONFIG_AD_SIGMA_DELTA=m
# CONFIG_AD4000 is not set
# CONFIG_AD4030 is not set
CONFIG_AD4080=m
# CONFIG_AD4130 is not set
CONFIG_AD4170_4=m
# CONFIG_AD4695 is not set
# CONFIG_AD4851 is not set
# CONFIG_AD7091R5 is not set
@@ -7161,7 +6992,6 @@ CONFIG_AD7173=m
# CONFIG_AD7292 is not set
# CONFIG_AD7298 is not set
CONFIG_AD7380=m
CONFIG_AD7405=m
# CONFIG_AD7476 is not set
# CONFIG_AD7606_IFACE_PARALLEL is not set
# CONFIG_AD7606_IFACE_SPI is not set
@@ -7629,7 +7459,6 @@ CONFIG_IIO_SYSFS_TRIGGER=m
#
# Proximity and distance sensors
#
CONFIG_D3323AA=m
# CONFIG_HX9023S is not set
# CONFIG_IRSD200 is not set
# CONFIG_ISL29501 is not set
@@ -7678,7 +7507,6 @@ CONFIG_D3323AA=m
# CONFIG_NTB is not set
CONFIG_PWM=y
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_ARGON_FAN_HAT is not set
# CONFIG_PWM_ATMEL_TCB is not set
# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DWC is not set
@@ -7687,7 +7515,6 @@ CONFIG_PWM_GPIO=m
# CONFIG_PWM_MC33XS2410 is not set
# CONFIG_PWM_MICROCHIP_CORE is not set
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_PXA is not set
# CONFIG_PWM_RENESAS_RCAR is not set
# CONFIG_PWM_RENESAS_TPU is not set
# CONFIG_PWM_SIFIVE is not set
@@ -7709,19 +7536,17 @@ CONFIG_RISCV_APLIC_MSI=y
CONFIG_RISCV_IMSIC=y
CONFIG_SIFIVE_PLIC=y
CONFIG_STARFIVE_JH8100_INTC=y
CONFIG_ACLINT_SSWI=y
# CONFIG_THEAD_C900_ACLINT_SSWI is not set
# CONFIG_SOPHGO_SG2042_MSI is not set
# end of IRQ chip support
# CONFIG_IPACK_BUS is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=m
CONFIG_RESET_K230=m
CONFIG_RESET_MCHP_SPARX5=m
CONFIG_RESET_POLARFIRE_SOC=y
# CONFIG_RESET_RZV2H_USB2PHY is not set
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_SPACEMIT=y
CONFIG_RESET_SUNXI=y
# CONFIG_RESET_TH1520 is not set
# CONFIG_RESET_TI_SYSCON is not set
@@ -8394,6 +8219,8 @@ CONFIG_CRYPTO_USER_API_AEAD=y
CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
# end of Userspace interface
CONFIG_CRYPTO_HASH_INFO=y
#
# Accelerated Cryptographic Algorithms for CPU (riscv)
#
@@ -8459,20 +8286,10 @@ CONFIG_RATIONAL=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
CONFIG_CRC7=m
CONFIG_CRC8=m
CONFIG_CRC16=y
CONFIG_CRC_CCITT=m
CONFIG_CRC_ITU_T=m
CONFIG_CRC_T10DIF=y
CONFIG_CRC32=y
CONFIG_CRC64=m
CONFIG_CRC_OPTIMIZATIONS=y
#
# Crypto library routines
#
CONFIG_CRYPTO_HASH_INFO=y
CONFIG_CRYPTO_LIB_UTILS=y
CONFIG_CRYPTO_LIB_AES=y
CONFIG_CRYPTO_LIB_ARC4=m
@@ -8490,9 +8307,18 @@ CONFIG_CRYPTO_LIB_POLY1305=y
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=y
CONFIG_CRYPTO_LIB_SHA1=y
CONFIG_CRYPTO_LIB_SHA256=y
CONFIG_CRYPTO_LIB_SHA512=y
CONFIG_CRYPTO_LIB_SHA256_GENERIC=y
# end of Crypto library routines
CONFIG_CRC_CCITT=m
CONFIG_CRC16=y
CONFIG_CRC_T10DIF=y
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=y
CONFIG_CRC64=m
CONFIG_CRC7=m
CONFIG_CRC8=m
CONFIG_CRC_OPTIMIZATIONS=y
CONFIG_XXHASH=y
CONFIG_AUDIT_GENERIC=y
# CONFIG_RANDOM32_SELFTEST is not set
@@ -8711,7 +8537,6 @@ CONFIG_MEM_ALLOC_PROFILING_ENABLED_BY_DEFAULT=y
CONFIG_HAVE_ARCH_KASAN=y
CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_KASAN_SW_TAGS=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
# CONFIG_KASAN is not set
CONFIG_HAVE_ARCH_KFENCE=y
@@ -8802,63 +8627,40 @@ CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_RETHOOK=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FREGS=y
CONFIG_HAVE_FTRACE_GRAPH_FUNC=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_CALL_OPS=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_TRACE_CLOCK=y
CONFIG_RING_BUFFER=y
CONFIG_EVENT_TRACING=y
CONFIG_CONTEXT_SWITCH_TRACER=y
CONFIG_TRACING=y
CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
CONFIG_TRACEFS_AUTOMOUNT_DEPRECATED=y
# CONFIG_BOOTTIME_TRACING is not set
CONFIG_FUNCTION_TRACER=y
CONFIG_FUNCTION_GRAPH_TRACER=y
CONFIG_FUNCTION_GRAPH_RETVAL=y
# CONFIG_FUNCTION_GRAPH_RETADDR is not set
CONFIG_DYNAMIC_FTRACE=y
CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y
CONFIG_DYNAMIC_FTRACE_WITH_CALL_OPS=y
CONFIG_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_FPROBE=y
# CONFIG_FUNCTION_PROFILER is not set
CONFIG_STACK_TRACER=y
# CONFIG_IRQSOFF_TRACER is not set
# CONFIG_SCHED_TRACER is not set
# CONFIG_HWLAT_TRACER is not set
# CONFIG_OSNOISE_TRACER is not set
# CONFIG_TIMERLAT_TRACER is not set
# CONFIG_ENABLE_DEFAULT_TRACERS is not set
# CONFIG_FTRACE_SYSCALLS is not set
# CONFIG_TRACER_SNAPSHOT is not set
CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
CONFIG_FPROBE_EVENTS=y
CONFIG_UPROBE_EVENTS=y
CONFIG_EPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
CONFIG_DYNAMIC_EVENTS=y
CONFIG_PROBE_EVENTS=y
CONFIG_FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY=y
# CONFIG_SYNTH_EVENTS is not set
# CONFIG_USER_EVENTS is not set
# CONFIG_TRACE_EVENT_INJECT is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_FTRACE_RECORD_RECURSION is not set
# CONFIG_FTRACE_VALIDATE_RCU_IS_WATCHING is not set
# CONFIG_FTRACE_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
+1 -14
View File
@@ -205,24 +205,11 @@ mirror_directory (const char *source, const char *target,
/* Create the mount point. */
int err = firmlink (abs_source, entry, new_entry);
int is_directory = 0;
if (entry->d_type == DT_UNKNOWN)
{
struct stat statbuf;
if (fstatat (dir_fd, entry->d_name, &statbuf,
AT_SYMLINK_NOFOLLOW) < 0)
assert_perror (errno);
if ((statbuf.st_mode & S_IFMT) == S_IFDIR)
is_directory = 1;
}
else if (entry->d_type == DT_DIR)
is_directory = 1;
/* It used to be that only directories could be bind-mounted. Thus,
keep going if we fail to bind-mount a non-directory entry.
That's OK because regular files in the root file system are
usually uninteresting. */
if (err != 0 && is_directory == 0)
if (err != 0 && entry->d_type != DT_DIR)
assert_perror (errno);
free (new_entry);
+2 -2
View File
@@ -662,5 +662,5 @@ with some layout changes and added features.
This package provides the patcher application.")))
(define-deprecated-package axoloti-patcher-next
ksoloti-patcher)
(define-public axoloti-patcher-next
(deprecated-package "axoloti-patcher-next" ksoloti-patcher))
+32
View File
@@ -1001,6 +1001,38 @@ restic's REST backend API. It provides a secure and efficient way to backup
data remotely, using the restic backup client and a @code{rest:} URL.")
(license license:bsd-2)))
(define-public zbackup
(package
(name "zbackup")
(version "1.4.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zbackup/zbackup")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "14l1kyxg7pccpax3d6qcpmdycb70kn3fxp1a59w64hqy2493hngl"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;no test
(inputs
(list lzo libressl protobuf-3.6 xz zlib))
(home-page "http://zbackup.org")
(synopsis "Versatile deduplicating backup tool")
(description
"ZBackup is a globally-deduplicating backup tool, based on the
ideas found in Rsync. Feed a large @file{.tar} into it, and it will
store duplicate regions of it only once, then compress and optionally
encrypt the result. Feed another @file{.tar} file, and it will also
re-use any data found in any previous backups. This way only new
changes are stored, and as long as the files are not very different,
the amount of storage required is very low. Any of the backup files
stored previously can be read back in full at any time. The program
is format-agnostic, so you can feed virtually any files to it.")
(license license:gpl2+)))
(define-public dump
(package
(name "dump")
+178 -35
View File
@@ -133,6 +133,15 @@ command-line arguments, multiple languages, and so on.")
(inputs (list pcre2))
(arguments
(list #:configure-flags #~(list "--enable-perl-regexp")
;; XXX: On 32-bit Hurd platforms, 'time_t' is defined as a 32-bit
;; integer in 'hurd_types.defs', so this Gnulib test always fails.
#:make-flags
#~#$(if (and (not (%current-target-system))
(string=? (%current-system) "i586-gnu"))
#~'("XFAIL_TESTS=test-year2038")
#~'())
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-egrep-and-fgrep
@@ -152,17 +161,6 @@ command-line arguments, multiple languages, and so on.")
(substitute* "lib/sigsegv.in.h"
(("__GNU__") "__XGNU__")))))
#~())
;; XXX: On 32-bit Hurd platforms, 'time_t' is defined as a 32-bit
;; integer in 'hurd_types.defs', so this Gnulib test always fails.
;; Use a phase instead of XFAIL_TESTS to not override
;; xfailing tests in grep
#$@(if (target-hurd32?)
#~((add-after 'unpack 'skip-year2038-test
(lambda _
(substitute* "gnulib-tests/test-year2038.c"
(("(^| )main *\\(.*" all)
(string-append all "{\n return 77;//"))))))
#~())
#$@(if (system-hurd?)
#~((add-before 'check 'skip-test
(lambda _
@@ -264,12 +262,6 @@ implementation offers several extensions over the standard utility.")
",!chained renames"
",!Directory"
"'"))))
;; 'storing sparse files > 8G' fails on powerpc-linux, likely
;; due to the small HDD and RAM present on these devices.
((target-ppc32?)
'(#:make-flags (list (string-append "TESTSUITEFLAGS= -k "
"'!tricky time stamps"
",!storing sparse files > 8G'"))))
;; https://lists.gnu.org/archive/html/bug-tar/2021-10/msg00007.html
;; tar-1.34 isn't aware of 64-bit time_t and upstream suggests
;; skipping the test for this release on 32-bit systems.
@@ -277,7 +269,8 @@ implementation offers several extensions over the standard utility.")
'(#:make-flags (list "TESTSUITEFLAGS= -k '!tricky time stamps'")))
(else '()))
;; XXX: 32-bit Hurd platforms don't support 64bit time_t
,@(if (target-hurd32?)
,@(if (and (target-hurd?)
(not (target-64bit?)))
(list #:configure-flags ''("--disable-year2038"))
'())
#:phases (modify-phases %standard-phases
@@ -353,7 +346,7 @@ differences.")
(arguments
(substitute-keyword-arguments (package-arguments patch/pinned)
((#:configure-flags flags #~'())
(if (target-hurd32?)
(if (and (target-hurd?) (not (target-64bit?)))
#~(cons* "--disable-year2038"
#$flags)
flags))))
@@ -377,7 +370,7 @@ differences.")
;; integer in 'hurd_types.defs', so this Gnulib test always fails.
#:make-flags
#~#$(cond ((and (not (%current-target-system))
(target-hurd32?))
(string=? (%current-system) "i586-gnu"))
#~'("XFAIL_TESTS=test-year2038"))
;; TODO: Figure out why these gnulib tests are failing.
((and (not (%current-target-system))
@@ -435,7 +428,8 @@ interactive means to merge two files.")
(arguments
`(#:configure-flags (list
;; XXX: 32-bit Hurd platforms don't support 64bit time_t
,@(if (target-hurd32?)
,@(if (and (target-hurd?)
(not (target-64bit?)))
'("--disable-year2038")
'())
;; Tell 'updatedb' to write to /var.
@@ -533,7 +527,6 @@ used to apply commands with arbitrarily long arguments.")
;; These tests error
"tests/dd/nocache.sh"
;; These tests fail
"tests/cp/parent-perm-race.sh"
"tests/cp/sparse.sh"
"tests/cp/special-f.sh"
"tests/dd/bytes.sh"
@@ -1361,6 +1354,145 @@ with the Linux kernel.")
;; This phase fails trying to create /etc/ld.so.cache
(delete 'install-utf8-c-locale)))))))
(define-public glibc-2.32
(package
(inherit glibc-2.35)
(version "2.32")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"0di848ibffrnwq7g2dvgqrnn4xqhj3h96csn69q4da51ymafl9qn"))
(patches (search-patches
"glibc-skip-c++.patch"
"glibc-ldd-powerpc.patch"
"glibc-ldd-x86_64.patch"
"glibc-dl-cache.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-supported-locales.patch"
"glibc-hurd-clock_t_centiseconds.patch"
"glibc-2.31-hurd-clock_gettime_monotonic.patch"
"glibc-hurd-signal-sa-siginfo.patch"
"glibc-hurd-mach-print.patch"
"glibc-hurd-gettyent.patch"))
#;
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-supported-locales.patch"
"glibc-hurd-clock_t_centiseconds.patch"
"glibc-hurd-clock_gettime_monotonic.patch"
"glibc-hurd-signal-sa-siginfo.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments glibc)
((#:make-flags flags '())
;; Arrange so that /etc/rpc & co. go to $out/etc.
`(list (string-append "sysconfdir="
(assoc-ref %outputs "out")
"/etc")))
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'set-etc-rpc-installation-directory
(lambda* (#:key outputs #:allow-other-keys)
;; Install the rpc data base file under `$out/etc/rpc'.
(let ((out (assoc-ref outputs "out")))
(substitute* "sunrpc/Makefile"
(("^\\$\\(inst_sysconfdir\\)/rpc(.*)$" _ suffix)
(string-append out "/etc/rpc" suffix "\n"))
(("^install-others =.*$")
(string-append "install-others = " out "/etc/rpc\n"))))))))))))
(define-public glibc-2.31
(package
(inherit glibc-2.35)
(version "2.31")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj"))
(patches (search-patches
"glibc-skip-c++.patch"
"glibc-ldd-powerpc.patch"
"glibc-ldd-x86_64.patch"
"glibc-dl-cache.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-supported-locales.patch"
"glibc-hurd-clock_t_centiseconds.patch"
"glibc-2.31-hurd-clock_gettime_monotonic.patch"
"glibc-hurd-signal-sa-siginfo.patch"
"glibc-hurd-mach-print.patch"
"glibc-hurd-gettyent.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments glibc)
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'set-etc-rpc-installation-directory
(lambda* (#:key outputs #:allow-other-keys)
;; Install the rpc data base file under `$out/etc/rpc'.
(let ((out (assoc-ref outputs "out")))
(substitute* "sunrpc/Makefile"
(("^\\$\\(inst_sysconfdir\\)/rpc(.*)$" _ suffix)
(string-append out "/etc/rpc" suffix "\n"))
(("^install-others =.*$")
(string-append "install-others = " out "/etc/rpc\n"))))))))))))
(define-public glibc-2.30
(package
(inherit glibc-2.31)
(version "2.30")
(native-inputs
;; This fails with a build error in libc-tls.c when using GCC 10. Use an
;; older compiler.
(modify-inputs (package-native-inputs glibc)
(prepend gcc-8)))
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"1bxqpg91d02qnaz837a5kamm0f43pr1il4r9pknygywsar713i72"))
(patches (search-patches "glibc-skip-c++.patch"
"glibc-ldd-x86_64.patch"
"glibc-CVE-2019-19126.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-2.29-supported-locales.patch"))))))
(define-public glibc-2.29
(package
(inherit glibc-2.30)
(version "2.29")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"0jzh58728flfh939a8k9pi1zdyalfzlxmwra7k0rzji5gvavivpk"))
(patches (search-patches "glibc-skip-c++.patch"
"glibc-ldd-x86_64.patch"
"glibc-CVE-2019-7309.patch"
"glibc-CVE-2019-9169.patch"
"glibc-2.29-git-updates.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-2.29-supported-locales.patch"))))))
(define-public (make-gcc-libc base-gcc libc)
"Return a GCC that targets LIBC."
(package (inherit base-gcc)
@@ -1381,7 +1513,14 @@ with the Linux kernel.")
(inherit glibc)
(name "glibc-locales")
(source (origin (inherit (package-source glibc))
(patches (cons (search-patch "glibc-locales.patch")
;; The patch for glibc 2.28 and earlier replaces the same
;; content, but the context in the patch is different
;; enough to fail to merge.
(patches (cons (search-patch
(if (version>=? (package-version glibc)
"2.29")
"glibc-locales.patch"
"glibc-locales-2.28.patch"))
(origin-patches (package-source glibc))))))
(synopsis "All the locales supported by the GNU C Library")
(description
@@ -1535,6 +1674,21 @@ test environments.")
(define-public glibc-locales-2.33
(package (inherit (make-glibc-locales glibc-2.33))
(name "glibc-locales-2.33")))
(define-public glibc-locales-2.32
(package (inherit (make-glibc-locales glibc-2.32))
(name "glibc-locales-2.32")))
(define-public glibc-locales-2.31
(package (inherit (make-glibc-locales glibc-2.31))
(name "glibc-locales-2.31")))
(define-public glibc-locales-2.30
(package (inherit (make-glibc-locales glibc-2.30))
(name "glibc-locales-2.30")))
(define-public glibc-locales-2.29
(package (inherit (make-glibc-locales glibc-2.29))
(name "glibc-locales-2.29")))
(define-public glibc-utf8-locales-2.29
(package (inherit (make-glibc-utf8-locales glibc-2.29))
(name "glibc-utf8-locales-2.29")))
(define-public which
(package
@@ -1556,18 +1710,7 @@ variety of options. It is an alternative to the shell \"type\" built-in
command.")
(license gpl3+))) ; some files are under GPLv2+
(define-public glibc/hurd
(hidden-package
(package/inherit glibc
(source
(origin
(inherit (package-source glibc))
(patches
(append (map search-patch
(delete "glibc-hurd64-intr-msg-clobber.patch" %glibc-patches))
(search-patches
"glibc-hurd-signal-fpe-exception.patch"
"glibc-hurd-xstate.patch"))))))))
(define-public glibc/hurd glibc)
(define-public glibc/hurd-headers
(package/inherit glibc/hurd
+6 -35
View File
@@ -13,7 +13,6 @@
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -48,7 +47,6 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages c)
#:use-module (gnu packages gcc)
#:use-module (gnu packages nss)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@@ -266,17 +264,17 @@ tests.")
(define-public bonnie++
(package
(name "bonnie++")
(version "2.00a")
(version "1.98")
(source (origin
(method url-fetch)
(uri (string-append "https://www.coker.com.au/bonnie++/bonnie++-"
version ".tgz"))
(sha256
(base32
"03lg8rz2a9wgwn9axd6gkjiswgxmp62fbxjvrrcvazmwh6ykplx8"))))
"010bmlmi0nrlp3aq7p624sfaj5a65lswnyyxk3cnz1bqig0cn2vf"))))
(build-system gnu-build-system)
(native-inputs
(list gcc-10 perl))
(list perl))
(arguments '(#:tests? #f)) ; there are no tests
(home-page "https://doc.coker.com.au/projects/bonnie/")
(synopsis "Hard drive and file system benchmark suite")
@@ -435,8 +433,9 @@ setup against another one.")
(native-inputs
(list coreutils
python-lxml
python-pynose
python-setuptools))
python-nose
python-setuptools
python-wheel))
(home-page "https://github.com/sosy-lab/benchexec/")
(synopsis "Framework for Reliable Benchmarking")
(description
@@ -903,31 +902,3 @@ user-provided Lua scripts.
aspects of Vulkan performance. The way in which each scene is rendered is
configurable through a set of options.")
(license license:lgpl2.1+))))
(define-public osu-micro-benchmarks
(package
(name "osu-micro-benchmarks")
(version "7.5.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://mvapich.cse.ohio-state.edu/download/mvapich/" name "-"
version ".tar.gz"))
(sha256
(base32 "08ifql3q8kv22xncvp6asfqp62dvfnc7w96b1r925c1w7ig0s38n"))))
(build-system gnu-build-system)
(inputs (list openmpi))
(arguments
(list
#:configure-flags
#~(list (string-append
"CC=" #$(this-package-input "openmpi") "/bin/mpicc")
(string-append
"CXX=" #$(this-package-input "openmpi") "/bin/mpicxx"))))
(home-page "https://mvapich.cse.ohio-state.edu/benchmarks/")
(synopsis "Benchmarking suite from the MVAPICH project")
(description
"Microbenchmarks suite to evaluate MPI and PGAS (OpenSHMEM, UPC, and
UPC++) libraries for CPUs and GPUs.")
(license license:bsd-3)))
+1545 -2009
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+20 -64
View File
@@ -23,7 +23,6 @@
;;; Copyright © 2025 Tomas Volf <~@wolfsden.cz>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2025 Junker <dk@junkeria.club>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -86,7 +85,6 @@
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages serialization)
#:use-module (gnu packages qt)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages ssh)
@@ -223,62 +221,21 @@ of the Transmission BitTorrent client, using its HTTP RPC protocol.")
(home-page "https://github.com/transmission-remote-gtk/transmission-remote-gtk")
(license l:gpl2+)))
(define-public stig
(package
(name "stig")
(version "0.14.0a0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rndusr/stig")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1jfcgncva94pyzjifar1l6wlmb7aylg0l4fxljc83rkbj1a2aan0"))))
(propagated-inputs
(list python-urwid
python-urwidtrees
python-aiohttp
python-aiohttp-socks
python-pyxdg
python-blinker
python-natsort
python-async-timeout
python-setproctitle))
(arguments
(list
#:tests? #f ;tests require network access
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'loosen-version-restrictions
(lambda _
(substitute* "setup.py"
(("urwidtrees==1.0.3") "urwidtrees>=1.0.3")))))))
(inputs (list python))
(build-system python-build-system)
(synopsis "TUI and CLI for the BitTorrent client Transmission")
(description
"Stig is a @acronym{TUI, Text User Interface} and @acronym{CLI, Command Line
Interface} client for the BitTorrent client Transmission.")
(home-page "https://github.com/rndusr/stig")
(license l:gpl3)))
(define-public libtorrent
(package
(name "libtorrent")
(version "0.16.1")
(version "0.13.8")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rakshasa/libtorrent/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"http://rtorrent.net/downloads/libtorrent-"
version ".tar.gz"))
(sha256
(base32
"1rk5y27r2v3x2v1gngxfw8kj1i8n93dpkvda6idbid6yxvv9slkm"))))
"10z9i1rc41cmmi7nx8k7k1agsx6afv09g9cl7g9zr35fyhl5l4gd"))))
(build-system gnu-build-system)
(inputs (list curl openssl zlib))
(native-inputs (list autoconf automake cppunit libtool pkg-config))
(inputs (list openssl zlib))
(native-inputs (list pkg-config cppunit))
(synopsis "BitTorrent library of rtorrent")
(description
"LibTorrent is a BitTorrent library used by and developed in parallel
@@ -290,16 +247,15 @@ speed and efficiency.")
(define-public rtorrent
(package
(name "rtorrent")
(version "0.16.1")
(version "0.9.8")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rakshasa/rtorrent/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"http://rtorrent.net/downloads/rtorrent-"
version ".tar.gz"))
(sha256
(base32
"0azpqclksczh1j7kpkwqh68xp3p9rayf9dym1c2iif56fm960mgh"))))
"1bs2fnf4q7mlhkhzp3i1v052v9xn8qa7g845pk9ia8hlpw207pwy"))))
(build-system gnu-build-system)
(inputs (list libtorrent
ncurses
@@ -307,7 +263,7 @@ speed and efficiency.")
cyrus-sasl
openssl
zlib))
(native-inputs (list autoconf automake cppunit libtool pkg-config))
(native-inputs (list pkg-config cppunit))
(synopsis "BitTorrent client with ncurses interface")
(description
"rTorrent is a BitTorrent client with an ncurses interface. It supports
@@ -524,7 +480,7 @@ and will take advantage of multiple processor cores where possible.")
"-E" exclude-regex
"-j" jobs
"--output-on-failure"))))))))
(inputs (list boost-1.83 openssl))
(inputs (list boost openssl))
(native-inputs
(list libfaketime
python-wrapper
@@ -608,8 +564,8 @@ features.")
(modify-inputs (package-inputs base)
(delete "qtsvg"))))))
(define-deprecated-package qbittorrent-nox
qbittorrent-no-x)
(define-public qbittorrent-nox
(deprecated-package "qbittorrent-nox" qbittorrent-no-x))
(define-public qbittorrent-enhanced
(package
@@ -646,8 +602,8 @@ the following features:
(arguments (package-arguments qbittorrent-no-x))
(inputs (package-inputs qbittorrent-no-x))))
(define-deprecated-package qbittorrent-enhanced-nox
qbittorrent-enhanced-no-x)
(define-public qbittorrent-enhanced-nox
(deprecated-package "qbittorrent-enhanced-nox" qbittorrent-enhanced-no-x))
(define-public deluge
(package
+1 -145
View File
@@ -1,17 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2023, 2024, 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023 Adam Faiz <adam.faiz@disroot.org>
;;; Copyright © 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2023 宋文武 <iyzsong@envs.net>
;;; Copyright © 2023-2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2025 Gabriel Santos <gabrielsantosdesouza@disroot.org>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,10 +21,7 @@
(define-module (gnu packages books)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix deprecation)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -63,105 +50,11 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages texlive)
#:use-module (gnu packages version-control)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xml))
(define-public book-faif
(package
(name "book-faif")
(version "2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.fsf.org/faif/faif-" version
".tar.bz2"))
(sha256
(base32
"0qf14d0n6k1dn9z0fdnx9qkhn4iq685xd443w7l7w54bm931p7dw"))))
(build-system copy-build-system)
(native-inputs
(list (texlive-local-tree
(list texlive-caption
texlive-endnotes
texlive-etoolbox
texlive-fncychap
texlive-helvetic
texlive-times
texlive-ucs))))
(arguments
(list
#:install-plan #~'(("faif-2.0.pdf" "share/doc/faif/"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'writable-texmfvar
;; Generating font shapes require a writable TEXMFVAR directory.
(lambda _ (setenv "TEXMFVAR" "/tmp")))
(add-before 'install 'build
(lambda _
(invoke "pdflatex" "faif-2.0.tex"))))))
(home-page "https://www.fsf.org/faif")
(synopsis "Free as in Freedom (2.0)")
(description
"In 2002, Sam Williams wrote Free as in Freedom, a biography of Richard
M. Stallman. In its epilogue, Williams expressed hope that choosing to
distribute his book under the GNU Free Documentation License would enable and
encourage others to share corrections and their own perspectives through
modifications to his work. Free as in Freedom (2.0) is Stallman's revision of
the original biography. While preserving Williams's viewpoint, it includes
factual corrections and extensive new commentary by Stallman, as well as new
prefaces by both authors written for the occasion. It is a rare kind of
biography, where the reader has the benefit of both the biographer's original
words and the subject's response.")
(license license:fdl1.3+)))
(define-public book-sicp
(let ((commit "bda03f79d6e2e8899ac2b5ca6a3732210e290a79")
(revision "3"))
(package
(name "book-sicp")
(version (git-version "20180718" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sarabander/sicp")
(commit commit)))
(sha256
(base32
"0mng7qrj2dvssyffr9ycnf4a5k0kadp4dslq7mc5bhzq1qxyjs2w"))
(file-name (git-file-name name version))))
(build-system copy-build-system)
(native-inputs (list gzip texinfo))
(arguments
(list #:install-plan ''(("html" "share/doc/sicp/")
("sicp.info" "share/info/"))
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'remove-obsolete-commands
(lambda _
;; Reported upstream:
;; https://github.com/sarabander/sicp/issues/46.
(substitute* "sicp-pocket.texi"
(("@setshortcontentsaftertitlepage")
""))))
(add-before 'install 'build
(lambda _
(invoke "makeinfo" "--no-split"
"--output=sicp.info"
"sicp-pocket.texi"))))))
(home-page "https://sarabander.github.io/sicp")
(synopsis "Structure and Interpretation of Computer Programs")
(description "Structure and Interpretation of Computer Programs (SICP) is
a textbook aiming to teach the principles of computer programming.
Using Scheme, a dialect of the Lisp programming language, the book explains
core computer science concepts such as abstraction in programming,
metalinguistic abstraction, recursion, interpreters, and modular programming.")
(license license:cc-by-sa4.0))))
;; It may be removed after 2025-12-19.
(define-deprecated/public-alias sicp book-sicp)
(define-public book-sparc
(package
(name "book-sparc")
@@ -334,40 +227,3 @@ display bibles, commentaries, dictionaries, and other texts and images.
Xiphos includes features such as searching, biblesync, bookmarks,
parallel study, and original language study.")
(license license:gpl2+)))
(define-public book-emacs-lisp-elements
(package
(name "book-emacs-lisp-elements")
(version "2.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/protesilaos/emacs-lisp-elements")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0w3jxgkynq37rn7c17pnricykqf3gmq4crsvkz2j2g3hc0ydf6qp"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f ;No code —no tests
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'makeinfo
(lambda _
(emacs-makeinfo "elispelem.org"))))))
(native-inputs (list texinfo))
(home-page "https://protesilaos.com/emacs/emacs-lisp-elements")
(synopsis "Overview of the Emacs Lisp programming language")
(description
"Emacs Lisp Elements is a book written by Protesilaos Stavrou, providing
a big picture view of the @acronym{Elisp, Emacs Lisp} programming language by
combining prose with code. This book aims to provide an idea of how Elisp
works by showing some of the main concepts and patterns encountered in
everyday Elisp code.
This book is not intended as a replacement for the built-in Emacs Lisp
Reference Manual, but instead to give readers enough information to reason
about Elisp code.")
(license license:fdl1.3+)))
+20 -77
View File
@@ -11,7 +11,7 @@
;;; Copyright © 2018, 2020, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2019, 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
@@ -69,15 +69,22 @@
(define-public boost
(package
(name "boost")
(version "1.89.0")
(version "1.83.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archives.boost.io/release/"
version "/source/boost_"
(version-with-underscores version) ".tar.bz2"))
(patches
(append
(search-patches "boost-fix-duplicate-definitions-bug.patch")
(list (boost-patch
"0001-unordered-fix-copy-assign.patch" version
"09j61m5xh7099k5na9i43x5rra51znf7vm2nyh89yqpizcll9q66"))))
(patch-flags '("-p2"))
(sha256
(base32
"0yhcb8dn7g5k9dfr54j99wpd4qwk59g1lpp8z0ag7d114si3z8w5"))))
"13iviiwk1srpw9dmiwabkxv56v0pl0zggjp8zxy1419k5zzfsy34"))))
(build-system gnu-build-system)
(inputs
(append
@@ -126,54 +133,16 @@
"binary-format=elf"
"target-os=linux"
#$@(cond
((string-prefix? "x86_64" (%current-target-system))
#~()) ; Implies boost.stacktrace.from_exception=on
;;; Note: With llvm's libc++, enabling that for
;;; non-x86_64 non-mingw32 would be a bad idea.
;;; libc++'s backtrace is not thread-safe and
;;; would leak then.
;;;
;;; We disable it here completely. Alternatively,
;;; we could disable it only if the user used
;;; (package-with-c-toolchain ... clang) or
;;; otherwise has libc++ in their dependencies.
;;;
;;; In the latter case, we would have to set
;;; BOOST_STACKTRACE_LIBCXX_RUNTIME_MAY_CAUSE_MEMORY_LEAK
;;; and that seems ill-advised (if a future
;;; update broke it in other ways, we would
;;; be blind to it).
;;;
;;; See also:
;;; <https://codeberg.org/guix/guix/issues/4541>.
((string-prefix? "arm" (%current-target-system))
#~("abi=aapcs"
"address-model=32"
"architecture=arm"
;; See also:
;; <https://codeberg.org/guix/guix/issues/4541>.
"boost.stacktrace.from_exception=off"))
"architecture=arm"))
((string-prefix? "aarch64" (%current-target-system))
#~("abi=aapcs"
"address-model=64"
"architecture=arm"
;; See also:
;; <https://codeberg.org/guix/guix/issues/4541>.
"boost.stacktrace.from_exception=off"))
(else
;; See also:
;; <https://codeberg.org/guix/guix/issues/4541>.
#~("boost.stacktrace.from_exception=off"))))
;; Not cross-compiling.
#~(#$@(cond
((string-suffix? "mingw32" (%current-system))
#~()) ; Implies boost.stacktrace.from_exception=on
((string-prefix? "x86_64" (%current-system))
#~()) ; Implies boost.stacktrace.from_exception=on
(else
;; See also:
;; <https://codeberg.org/guix/guix/issues/4541>.
#~("boost.stacktrace.from_exception=off"))))))
"architecture=arm"))
(else #~())))
#~()))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-shells
@@ -239,7 +208,7 @@ across a broad spectrum of applications.")
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
"Some components have other similar licences."))))
(define-public boost-1.83
(define-public boost-for-source-highlight
(hidden-package (package (inherit boost)
(name "boost")
(version "1.83.0")
@@ -255,36 +224,10 @@ across a broad spectrum of applications.")
(patch-flags '("-p2"))
(sha256
(base32
"13iviiwk1srpw9dmiwabkxv56v0pl0zggjp8zxy1419k5zzfsy34"))))
(arguments
(substitute-keyword-arguments (package-arguments boost)
((#:make-flags _ #f)
#~(list "threading=multi" "link=shared"
;; Set the RUNPATH to $libdir so that the libs find each other.
(string-append "linkflags=-Wl,-rpath="
#$output "/lib")
#$@(if (%current-target-system)
#~("--user-config=user-config.jam"
;; Python is not supported when cross-compiling.
"--without-python"
"binary-format=elf"
"target-os=linux"
#$@(cond
((string-prefix? "arm" (%current-target-system))
#~("abi=aapcs"
"address-model=32"
"architecture=arm"))
((string-prefix? "aarch64" (%current-target-system))
#~("abi=aapcs"
"address-model=64"
"architecture=arm"))
(else
#~())))
;; Not cross-compiling.
#~()))))))))
"13iviiwk1srpw9dmiwabkxv56v0pl0zggjp8zxy1419k5zzfsy34")))))))
(define-deprecated-package boost-with-python3
boost)
(define-public boost-with-python3
(deprecated-package "boost-with-python3" boost))
(define-public boost-static
(package
@@ -349,7 +292,7 @@ across a broad spectrum of applications.")
(define-public boost-numpy
(package
(inherit boost-1.83)
(inherit boost)
(name "boost-numpy")
(native-inputs
(modify-inputs (package-native-inputs boost)
@@ -456,7 +399,7 @@ signals and slots system.")
(build-system gnu-build-system)
(native-inputs (list autoconf automake))
(propagated-inputs
(list boost-1.83)) ; inclusion of header files
(list boost)) ; inclusion of header files
(home-page "https://gitlab.com/mdds/mdds")
(synopsis "Multi-dimensional C++ data structures and indexing algorithms")
(description "Mdds (multi-dimensional data structure) provides a
+10 -27
View File
@@ -23,8 +23,6 @@
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2025 Esther Flashner <esther@flashner.co.il>
;;; Copyright © 2025 André Batista <nandre@riseup.net>
;;; Copyright © 2025 dan <i@dan.games>
;;; Copyright © 2025 Jiyu Software <info@jiyu.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -864,17 +862,7 @@ tree binary files. These are board description files used by Linux and BSD.")
(sha256
(base32 "1i1v86bnixh8hyqbwwr5iwdnnadmg2fqxw9g526fvclsbvl8lz0v"))
(patches (search-patches "u-boot-allow-disabling-openssl.patch"
"u-boot-rockchip-inno-usb.patch"))
(snippet
;; Remove non-free binary licenses, blobs and microcode.
#~(begin
(use-modules (guix build utils))
(for-each delete-file
'("Licenses/r8a779x_usb3.txt"
"drivers/usb/host/xhci-rcar-r8a779x_usb3_v3.h"
"arch/mips/mach-octeon/include/mach/cvmx-pki-cluster.h"))
(for-each delete-file
(find-files "arch/x86/dts/microcode/" "\\.dtsi$"))))))
"u-boot-rockchip-inno-usb.patch"))))
(build-system gnu-build-system)
(native-inputs
(list bison
@@ -939,16 +927,12 @@ Info manual.")))
(inherit u-boot)
(name "u-boot-tools")
(native-inputs
(if (string-match "^x86_64-linux" (%current-system))
(modify-inputs (package-native-inputs u-boot)
(prepend python-filelock
python-pycryptodomex
python-coverage
python-pytest
python-pytest-xdist))
(modify-inputs (package-native-inputs u-boot)
(prepend python-filelock
python-pycryptodomex))))
(modify-inputs (package-native-inputs u-boot)
(prepend python-coverage
python-filelock
python-pycryptodomex
python-pytest
python-pytest-xdist)))
(arguments
`(#:make-flags '("HOSTCC=gcc")
#:test-target "tcheck"
@@ -1049,7 +1033,9 @@ CONFIG_TOOLS_KWBIMAGE=n")
(invoke "test/image/test-imagetools.sh"))))
;; Only run full test suite on x86_64 systems, as many tests
;; assume x86_64.
,@(if (string-match "^x86_64-linux" (%current-system))
,@(if (string-match "^x86_64-linux"
(or (%current-target-system)
(%current-system)))
'((add-after 'check 'check-x86
(lambda* (#:key make-flags test-target tests? #:allow-other-keys)
(when tests?
@@ -1562,9 +1548,6 @@ Documentation} for more information (for example by running @samp{info
(define-public u-boot-pinebook-pro-rk3399
(make-u-boot-rockchip-package "pinebook-pro" 'rk3399))
(define-public u-boot-nanopi-r4s-rk3399
(make-u-boot-rockchip-package "nanopi-r4s" 'rk3399))
(define*-public (make-u-boot-bin-package u-boot-package
#:key
(u-boot-bin "u-boot.bin"))
+8 -8
View File
@@ -193,15 +193,15 @@ ungoogled-chromium.")
(define-public passff-host
(package
(name "passff-host")
(version "1.2.5")
(home-page "https://codeberg.org/PassFF/passff-host")
(version "1.2.4")
(home-page "https://github.com/passff/passff-host")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"01kw5w6ihm4d6l5va7c0mb7539rnmqfn16c9w543xf5s0n5f2i7h"))))
"1lcwa1qzfxlifmj33qndp1wgi6yx6vj21ir0az79vhm5k03p961z"))))
(build-system copy-build-system)
(arguments
(let ((native-manifests "lib/icecat/native-messaging-hosts"))
@@ -231,15 +231,15 @@ properly.")
(define passff
(package
(name "passff")
(version "1.23")
(home-page "https://codeberg.org/passff/passff")
(version "1.16")
(home-page "https://github.com/passff/passff")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0y6ji3mqmp9dadj1rm712n1bjpl021a4yssv7m1ydllmw10gs009"))))
"0y3cbgy89lgvq6lfabp7mi1zhphdvihcccn3yw5mmaql9yrdm5kc"))))
(propagated-inputs (list passff-host))
(build-system copy-build-system)
(properties '((addon-id . "passff@invicem.pro")))
@@ -328,7 +328,7 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.")
(define noscript
(package
(name "noscript")
(version "13.2.2")
(version "13.0.9")
(source (origin
(method url-fetch/zipbomb)
(uri (string-append
@@ -336,7 +336,7 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.")
".xpi"))
(sha256
(base32
"0w2w0a76dk01bkh83mqwgs9ky02rjqk15z5sxg4a6mw0hpr81bpm"))))
"1xbisx3xqak9aj7nb2lh94an6yfldsl6a2g2qc87vxi1zwdbcnjj"))))
(build-system copy-build-system)
(properties '((addon-id . "{73a6fe31-595d-460b-a920-fcc0f8843232}")))
(arguments
+7 -41
View File
@@ -21,7 +21,6 @@
;;; Copyright © 2022, 2023 Juliana Sims <juli@incana.org>
;;; Copyright © 2024 Evgeny Pisemsky <mail@pisemsky.site>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Anderson Torres <anderson.torres.8519@gmail.com>
;;; Copyright © 2025 Aiden Isik <aidenisik+git@member.fsf.org>
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
@@ -100,40 +99,6 @@
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml))
(define-public acr
(package
(name "acr")
(version "2.2.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/radareorg/acr")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1qd7p50b9gkh2ihf7gs6xpdkb5jk8frg90ajqlw1pbza8735f9q1"))
(snippet
#~(begin
(delete-file "configure")))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; No tests
#:phases
#~(modify-phases %standard-phases
(delete 'bootstrap)
(add-after 'patch-source-shebangs 'bootstrap-after-patch-source-shebangs
(assoc-ref %standard-phases 'bootstrap)))))
(synopsis "Autoconf replacement written in pure Bash")
(description
"@acronym{ACR, Autoconf Replacement} tries to replace autoconf
functionality generating a full-compatible configure script, but relying on
Bourne shell script instead of m4.")
(home-page "https://github.com/radareorg/acr")
(license license:gpl2)))
(define-public bam
(package
(name "bam")
@@ -406,7 +371,7 @@ resembles Python.")
(list meson
ninja/pinned
python-colorama
python-cython
python-cython-3
python-pyproject-metadata
python-tomli
python-typing-extensions
@@ -416,9 +381,10 @@ resembles Python.")
git-minimal/pinned
patchelf
pkg-config
python-cython
python-cython-3
python-gitpython
python-pytest
python-pytest-cov
python-pytest-mock))
(home-page "https://github.com/mesonbuild/meson-python")
(synopsis "Meson-based build backend for Python")
@@ -1151,7 +1117,7 @@ maintenance-related files, for convenience.")
(define-public maak
(package
(name "maak")
(version "0.2.12")
(version "0.2.3")
(source
(origin
(method git-fetch)
@@ -1160,7 +1126,7 @@ maintenance-related files, for convenience.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0566damp7339n8rs2dvvq80h07amygnn3nakj2wwav2fmb1yzgx1"))))
(base32 "15s6khifk7k002hr9mqgl45r3ipmvsc56z9z8skwclxsj6w1cddl"))))
(build-system guile-build-system)
(arguments
(list
@@ -1332,5 +1298,5 @@ The Waf Book and in the API docs
;; waf is the final program no need to prefix it with "python-", the same way
;; as meson or ninja which are written in Python as well.
(define-deprecated-package python-waf
waf)
(define-public python-waf
(deprecated-package "python-waf" waf))
+12 -12
View File
@@ -14,7 +14,7 @@
;;; Copyright © 2021 David Dashyan <mail@davie.li>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 (unmatched parenthesis <paren@disroot.org>
;;; Copyright © 2022, 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
@@ -149,8 +149,8 @@ slicing.")
(license license:boost1.0))))
(define-public cproc
(let ((commit "14a8916e23bc6daebcb54f1384fa0eb2455072e3")
(revision "3"))
(let ((commit "70fe9ef1810cc6c05bde9eb0970363c35fa7e802")
(revision "2"))
(package
(name "cproc")
(version (git-version "0.0" revision commit))
@@ -162,7 +162,7 @@ slicing.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1yrs1ccsjypfsjsmxxjspaggn0bjwifs2slalnpvsrgzxw5559bx"))
(base32 "1qmgzll7z7mn587azkj4cizyyd8ii6iznfxpc66ja08140sbn9yx"))
(patches (search-patches "cproc-extra-linkflags.patch"))))
(build-system gnu-build-system)
(arguments
@@ -958,17 +958,17 @@ replacement for the syslog() call, but retains its ease of use.")
(define-public liblognorm
(package
(name "liblognorm")
(version "2.0.7")
(version "2.0.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rsyslog/liblognorm")
(url "https://github.com/rsyslog/liblognorm.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1syh3lx58q6izzgmpq8pj4j5aw6qr5nzplnmk42f2alrw38sprd5"))))
"1pyy1swvq6jj12aqma42jimv71z8m66zy6ydd5v19cp2azm4krml"))))
(build-system gnu-build-system)
(arguments
(list
@@ -1437,7 +1437,7 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
(define-public mimalloc
(package
(name "mimalloc")
(version "3.1.5")
(version "2.1.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1446,7 +1446,7 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
(file-name (git-file-name name version))
(sha256
(base32
"0a3z1vi3n4w6n1iz4yqnvllrlpqb2dc2a54wn2s52js541zsfkky"))))
"1pyf05snc1ib7zjjm9kspvbmynd8lmxqw72qcpz8lcyzyywmz24i"))))
(build-system cmake-build-system)
(arguments
`(#:build-type "Release"
@@ -1572,9 +1572,9 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
,(string-append "--prefix=" #$output)
,(string-append "--mandir=" #$output "/share/man")
,(string-append "--cores="
;; Tests require parallelism, and set upper limit as test
;; runtime scales superliniearly in the number of cores.
(number->string (max 2 (min 8 (parallel-job-count))))))))))))
(if parallel-build?
(number->string (parallel-job-count))
"1")))))))))
(home-page "https://github.com/concurrencykit/ck")
(synopsis "C library for concurrent systems")
(description "Concurrency Kit (@code{ck}) provides concurrency primitives,
+2 -81
View File
@@ -1,5 +1,4 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
@@ -11,13 +10,11 @@
;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Andy Tai <atai@atai.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -108,33 +105,6 @@ https://www.agendadulibre.org are in French and the adl-submit tool is only
available in French.")
(license license:gpl2))))
(define-public date2name
(let ((commit "50cc8d3957fc0bdc26c65042ab8f0d9f05610283")
(revision "2"))
(package
(name "date2name")
(version (git-version "0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/novoid/date2name")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "16m24dvyg93rpa94401cladjvj5pk3ds5y6sbz54xygdpg9qf8qm"))))
(build-system pyproject-build-system)
(native-inputs
(list python-poetry-core
python-pytest))
(home-page "https://github.com/novoid/date2name")
(synopsis "Handling time-stamps and date-stamps in file names")
(description
"By default, date2name gets the modification time of matching files and
directories and adds a datestamp in standard ISO 8601+ format YYYY-MM-DD at
the beginning of the file or directory name.")
(license license:gpl3+))))
(define-public date
(package
(name "date")
@@ -490,55 +460,6 @@ traditional Chinese characters.")
;; 'Lesser GPL version 2 or later'.
(license (list license:gpl2+ license:lgpl2.1+))))
(define-public gcal
(package
(name "gcal")
(version "4.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.alteholz.dev/gnu/gcal-"
version ".tar.xz"))
(sha256
(base32
"1p3q6his31bxs24nsgpfavw3nlhalqf0zak4f3b530p725s2vgfq"))
(snippet
#~(begin
(use-modules (guix build utils))
;; Adjust the bundled gnulib to work with glibc 2.28. See e.g.
;; "m4-gnulib-libio.patch". This is a phase rather than patch
;; or snippet to work around <https://bugs.gnu.org/32347>.
(substitute* (find-files "lib" "\\.c$")
(("#if defined _IO_ftrylockfile")
"#if defined _IO_EOF_SEEN"))
(substitute* "lib/stdio-impl.h"
(("^/\\* BSD stdio derived implementations")
(string-append
"#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n"
"# define _IO_IN_BACKUP 0x100\n"
"#endif\n\n"
"/* BSD stdio derived implementations")))
#t))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list "LDFLAGS=-lm")))
(native-inputs
(list check
pkg-config))
(home-page "https://www.gnu.org/software/gcal/")
(synopsis "Calculating and printing a wide variety of calendars")
(description
"Gcal is a program to calculate and print calendars on the
command-line. Calendars can be printed in 1-month, 3-month or whole-year
views. In addition, eternal holiday lists can be generated for many
countries, which can be complemented by user-made lists of fixed dates to
make an agenda. Gcal can also calculate astronomical data, such as the
phases of the moon, and supports alternative calendar formats: Julian,
Gregorian, Islamic, Chinese and more.")
(license license:gpl3+)))
(define-public gsimplecal
(let ((version "2.4.1"))
(package
@@ -569,7 +490,7 @@ configured to show the current time in different timezones.")
(define-public hebcal
(package
(name "hebcal")
(version "5.9.4")
(version "5.8.7")
(source
(origin
(method git-fetch)
@@ -578,7 +499,7 @@ configured to show the current time in different timezones.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hw4485s83amvl03y33zkxi9ka9yq6rvbdsw20m6fc4m2bj8lb79"))))
(base32 "1a1b9jip1ha6bzv6xg9fx47q167yzgbxjvrp5zngv175nzl9427j"))))
(build-system go-build-system)
(arguments
(list
+124
View File
@@ -0,0 +1,124 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages cedille)
#:use-module (gnu packages)
#:use-module (gnu packages agda)
#:use-module (gnu packages emacs-xyz)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (guix build-system emacs)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages))
(define-public cedille
(package
(name "cedille")
(version "1.1.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cedille/cedille")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1h5s6ayh3s76z184jai3jidcs4cjk8s4nvkkv2am8dg4gfsybq22"))))
(inputs
(list agda agda-ial ghc ghc-alex ghc-happy))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-cedille-paths
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "cedille-mode.el"
(("/usr/share/emacs/site-lisp/cedille-mode")
(string-append
out "/share/emacs/site-lisp/cedille")))
(substitute* "cedille-mode/cedille-mode-info.el"
(("\\(concat cedille-path-el \"cedille-info-main.info\"\\)")
(string-append
"\"" out "/share/info/cedille-info-main.info.gz\"")))
#t)))
(add-after 'patch-cedille-paths 'copy-cedille-mode
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lisp
(string-append
out "/share/emacs/site-lisp/cedille/")))
(mkdir-p (string-append lisp "cedille-mode"))
(copy-recursively
"cedille-mode"
(string-append lisp "cedille-mode"))
(mkdir-p (string-append lisp "se-mode"))
(copy-recursively
"se-mode"
(string-append lisp "se-mode"))
#t)))
;; FIXME: Byte compilation fails
(delete 'build)
(replace 'check
(lambda _
(with-directory-excursion "cedille-tests"
(invoke "sh" "run-tests.sh"))))
(add-after 'unpack 'patch-libraries
(lambda _ (patch-shebang "create-libraries.sh") #t))
(add-after 'unpack 'copy-ial
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively
(search-input-directory inputs "/include/agda/ial")
"ial")
;; Ambiguous module if main is included from ial
(delete-file "ial/main.agda")
#t))
(add-after 'check 'build-cedille
;; Agda has a hard time with parallel compilation
(lambda _
(invoke "touch" "src/Templates.hs")
(make-file-writable "src/Templates.hs")
(invoke "touch" "src/templates.agda")
(make-file-writable "src/templates.agda")
(invoke "make" "--jobs=1")))
(add-after 'install 'install-cedille
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(copy-recursively
"lib" (string-append out "/lib/cedille"))
(install-file "cedille" (string-append out "/bin"))
(install-file "core/cedille-core"
(string-append out "/bin"))
(install-file "docs/info/cedille-info-main.info"
(string-append out "/share/info"))
#t))))))
(home-page "https://cedille.github.io/")
(synopsis
"Language based on Calculus of Dependent Lambda Eliminations")
(description
"Cedille is an interactive theorem-prover and dependently typed
programming language, based on extrinsic (aka Curry-style) type theory. This
makes it rather different from type theories like Coq and Agda, which are
intrinsic (aka Church-style). In Cedille, terms are nothing more than
annotated versions of terms of pure untyped lambda calculus. In contrast, in
Coq or Agda, the typing annotations are intrinsic parts of terms. The typing
annotations can only be erased as an optimization under certain conditions,
not by virtue of the definition of the type theory.")
(license license:expat)))

Some files were not shown because too many files have changed in this diff Show More