Commit graph

149304 commits

Author SHA1 Message Date
Herman Rimm
1a62f687e5
gnu: bootloaders: u-boot-sandbox: Reformat.
* gnu/packages/bootloaders.scm (u-boot-sandbox): Wrap at 72 columns.

Change-Id: I440c05b369c0be1437a3174e055efeeda8e5fe01
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2024-12-18 14:25:03 -08:00
Herman Rimm
56c6466887
gnu: u-boot: Use search-patches.
* gnu/packages/bootloaders.scm (%u-boot-rockchip-inno-usb-patch,
%u-boot-allow-disabling-openssl-patch): Remove variables, move comments.
(u-boot)[source]: Use search-patches.
* gnu/packages/patches/u-boot-allow-disabling-openssl.patch: Comment.
* gnu/packages/patches/u-boot-rockchip-inno-usb.patch: Remove E-Mail
metadata.  Replace diffstat with comments.  Reapply to U-Boot v2024.10.

Change-Id: I760a2e81bddfc2a80ef149fe1ac4496cbbd937a0
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2024-12-18 14:25:01 -08:00
Herman Rimm
9e85818258
gnu: u-boot-tools: Remove extraneous native-input.
* gnu/package/bootloaders.scm (u-boot-tools)[native-inputs]: Remove
sdl2.

Change-Id: I14d8a605f5e7232f6047ddccfcbd0249ee4b661c
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2024-12-18 14:24:58 -08:00
Herman Rimm
ef50749aed
gnu: u-boot: Update to 2024.10.
* gnu/packages/bootloaders.scm (u-boot): Update to 2024.10.
[source]: Remove build-without-libcrypto patch.  Use git-fetch.
(%u-boot-build-without-libcrypto-patch): Remove variable.
(u-boot-tools)[arguments]: Enable test_spl.  Disable sandbox tests and
kwbimage.
(python-u-boot-pylib)[arguments]: Add phase to fix build file.
(make-u-boot-package)[arguments]: Disable kwbimage.
(u-boot-sandbox): Only keep CONFIG_FIT_CIPHER disabled.
[inputs]: Add efitools.
(u-boot-rockpro64-rk3399): Replace CONFIG_DM_SCSI with CONFIG_SCSI.
* gnu/packages/patches/u-boot-build-without-libcrypto.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove patch.

Change-Id: I07cb0df0431ed45af0beb05105ae948136dd9eb3
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2024-12-18 14:24:56 -08:00
Herman Rimm
8a016fa056
Revert "gnu: u-boot-tools: Fix segfault while running tests."
This reverts commit e526b8b11d.

Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2024-12-18 14:24:52 -08:00
Leo Famulari
6f7778e5da
gnu: MPD: Update to 0.23.16.
* gnu/packages/mpd.scm (mpd): Update to 0.23.16.

Change-Id: I2efb423027848d3cc0a87470dffa179aff6f7c47
2024-12-18 16:44:02 -05:00
Ashish SHUKLA
a9a944a497
gnu: yt-dlp: Update to 2024.12.13.
* gnu/packages/video.scm (yt-dlp): Update to 2024.12.13.

Change-Id: I9aaf05b55c5f5e8fd07616945dc5b4bfde1573b2
Signed-off-by: Leo Famulari <leo@famulari.name>
2024-12-18 16:43:51 -05:00
Jelle Licht
71480d609b
gnu: Add node alias for node-lts.
The node alias should henceforth refer to versions of Node.js that are at
least as recent as node-lts.

* gnu/packages/node.scm (node): New variable.

Change-Id: I1f19914715dda7da6bb45917e32b53227b480929
2024-12-18 22:02:20 +01:00
Jelle Licht
835b609d1b
gnu: node: Rename variable to node-bootstrap and hide package.
The package formerly known as node has security issues, so should only be used
to bootstrap more recent and secure versions of node.

* gnu/packages/node.scm (node): Rename to...
(node-bootstrap): ... this, and make it a hidden package.

Change-Id: I536a8f55faa14f8221915467c2981053f4c4d70e
2024-12-18 22:02:20 +01:00
Jelle Licht
31abde9afa
gnu: esbuild-node: Use node-lts instead of node.
* gnu/packages/web.scm (esbuild-node)[#:phases]<build-platform>: Remove
workaround needed for building with older versions of Node.
[native-inputs]: Replace node by node-lts.

Change-Id: Iedf30dc1a395e674007c08ce6c0881dbb0f94f0e
2024-12-18 22:02:20 +01:00
Jelle Licht
d4caaf2a92
gnu: vlang: Use node-lts instead of node.
* gnu/packages/vlang.scm (vlang)[native-inputs]: Replace node by node-lts.

Change-Id: Iaf577f0b9bbd7095392c88c2d2737c0703d3bf96
2024-12-18 22:02:20 +01:00
Jelle Licht
3602ccfcd3
gnu: ruby-execjs: Use node-lts instead of node.
* gnu/packages/ruby.scm (ruby-execjs)[native-inputs]: Replace node by
node-lts.

Change-Id: If7ff42d9865d79c23560fb190db4fdce9ecc621c
2024-12-18 22:02:20 +01:00
Jelle Licht
10796c9706
gnu: ruby-autoprefixer-rails: Use node-lts instead of node.
* gnu/packages/rails.scm (ruby-autoprefixer-rails)[native-inputs]: Replace
node by node-lts.

Change-Id: Iea7fc9001cb12eecb1257a9a0f83851bd8bc36fd
2024-12-18 22:02:20 +01:00
Jelle Licht
db3ea50181
gnu: qtwebengine-5: Use node-lts instead of node.
* gnu/packages/qt.scm (qtwebengine-5)[native-inputs]: Replace node by
node-lts.

Change-Id: If05e9dd0ef4a971074828da66742bb9387536e4d
2024-12-18 22:02:20 +01:00
Jelle Licht
6aa76b36e0
gnu: python-cloudscraper: Use node-lts instead of node.
* gnu/packages/python-web.scm (python-cloudscraper)[inputs]: Replace node by
node-lts.

Change-Id: Id7a9354c04557d27ec90cfbecd0c8005cf912f1a
2024-12-18 22:02:20 +01:00
Jelle Licht
64ea1afa0f
gnu: fmp: Use node-lts instead of node.
* gnu/packages/package-management.scm (fpm)[native-inputs]: Repalce node by
node-lts.

Change-Id: I5afdb49e18805722b9e69be0cf48c3a29ce49921
2024-12-18 22:02:20 +01:00
Jelle Licht
d43b1742bb
gnu: js-of-ocaml: Use node-lts instead of node.
* gnu/packages/ocaml.scm (js-of-ocaml)[native-inputs]: Replace node by
node-lts.

Change-Id: Ie7dd4dc25bac75a41d1510df9ecf6cc2c4a2c5a7
2024-12-18 22:02:20 +01:00
Jelle Licht
98fe436c57
gnu: ocaml-ezjsonm: Use node-lts instead of node.
* gnu/packages/ocaml.scm (ocaml-ezjsonm)[native-inputs]: Replace node by
node-lts.

Change-Id: Icb79d2ac8cfa424a55e9b5985b8f4dacae7a9f37
2024-12-18 22:02:20 +01:00
Jelle Licht
1b563f1733
gnu: python-cwl-utils: Use node-lts instead of node.
* gnu/packages/bioinformatics.scm (python-cwl-utils)[inputs]: Replace node by
node-lts.

Change-Id: Ia98601db0a9233a96263051e1520a848dbc40a9c
2024-12-18 22:02:20 +01:00
Jelle Licht
5f77674e48
gnu: cwltool: Use node-lts instead of node.
* gnu/packages/bioinformatics.scm (cwltool)[inputs]: Replace node by node-lts.

Change-Id: Idea8c5cb456080fccd8fff6c6b2c674764ae7bce
2024-12-18 22:02:20 +01:00
Jelle Licht
74ef6f55a1
gnu: r-v8: Fix build with node-lts@20.
The version bump of node-lts from 18 to 20 also bumped the version in the so-file.

* gnu/packages/cran.scm (r-v8)[#:phases]<find-v8>: Look for libnode-so.115 as
provided by node-lts.

Change-Id: Ib5c0d865aea36c7d881efddf4877cbab4b7dd932
2024-12-18 22:02:20 +01:00
Jelle Licht
cf6a25ae73
gnu: node-addon-api: Update to 8.3.0.
* gnu/packages/node-xyz.scm (node-addon-api): Update to 8.3.0.
[arguments]<#:phases>: Delete additional optional dependencies in
'delete-dependencies' phase.

Change-Id: I86c6b026980aea02a20f889bc7f92ea3a304e674
2024-12-18 22:02:20 +01:00
Jelle Licht
d925b8c3db
gnu: node-nan: Update to 2.22.0.
* gnu/packages/node-xyz.scm (node-nan): Update to 2.22.0.

Change-Id: I000014f57db510f2351e2feb57e93b5325ed88a0
2024-12-18 22:02:20 +01:00
Jelle Licht
bedc8d2379
gnu: node-acorn: Update to 8.7.1.
* gnu/packages/node-xyz.scm (node-acorn): Update to 8.7.1.

Change-Id: Ie962b9c980f8e14bf0ccce046497bda87108dffc
2024-12-18 22:02:19 +01:00
Jelle Licht
a2d6416549
gnu: node-uglify-js: Update to 3.19.3.
* gnu/packages/uglifyjs.scm (node-uglify-js): Update to 3.19.3.

Change-Id: I3c221442e39fc49484122f377df79896bbb18bd9
2024-12-18 22:02:19 +01:00
Jelle Licht
7b3b9331ae
gnu: node-lts: Update to 20.18.1 [security fixes].
* gnu/packages/node.scm (node-lts): Update to 20.18.1.
[origin]: Delete bundled brotli, ngtcp2 and uv.
[:configure-flags]: Add shared-nghtcp2 flag. Add shared-nghttp3 flag.
[#:phases]<delete-problematic-tests>: Remove tests that fail due to linking to
unbundled libuv. Delete tests that depend on 64-bit time_t for 32-bit builds.
[native-inputs]: Replace libuv by libuv-for-node-lts.
[inputs]: Replace libuv by libuv-for-node-lts. Add ngtpc2, nghttp3.

Change-Id: I932e64f212283b34f0affad65c3d9f92fdea3d79
2024-12-18 22:02:19 +01:00
Jelle Licht
b0e5c1d038
gnu: llhttp-bootstrap: Update to 8.1.2.
* gnu/packages/node.scm (llhttp-bootstrap): Update to 8.1.2.

Change-Id: I4eff26889b2645c031fc9ea896657468d5752953
2024-12-18 22:02:19 +01:00
Jelle Licht
37ec990182
gnu: Add libuv-for-node-lts.
Specific versions of Node depend on specific versions of libuv.

* gnu/packages/libevent.scm (libuv-for-node-lts): New package.

Change-Id: I97f6b96002dde37a0cec56dbfd7ff8722982ff89
2024-12-18 22:02:19 +01:00
Jelle Licht
954385d48f
gnu: Remove c-ares-for-node.
The node-lts package can now be built using the standard c-ares package.

* gnu/packages/adns.scm (c-ares-for-node): Delete variable.

Change-Id: I9e613f2d4aeacb6079d69f5bef22d11eb8dc6b18
2024-12-18 22:02:19 +01:00
Jelle Licht
efd55e049a
gnu: node-lts: Replace customized c-ares-for-node by c-ares.
* gnu/packages/node.scm (node-lts) [native-inputs]: Replace c-ares-for-node by
c-ares.
[inputs]: Ditto.

Change-Id: Ibef027d55c14e302d406d6478fed474f67c0d508
2024-12-18 22:02:19 +01:00
Jelle Licht
30a215c15d
gnu: Remove nghttp2-for-node.
This hidden package is not needed as the ancient version of node we use to
bootstrap llhttp can be built using the standard nghttp2 package.

* gnu/packages/web.scm (assimp-5.0): Delete variable.

Change-Id: Ib077fcc55c9bf7fd3caab69220aa8c86e5c33f8a
2024-12-18 22:02:19 +01:00
Jelle Licht
89b8a6d27d
gnu: node: Replace customized nghttp2-for-node by nghttp2.
* gnu/packages/node.scm (node) [native-inputs]: Replace nghttp2-for-node by
nghttp2.
[inputs]: Ditto.
[arguments]<#:phases>: Adjust accordingly by skipping failing tests.

Change-Id: Ia3d63ea1c428c1353d6ec6fda394ccb016eb6603
2024-12-18 22:02:19 +01:00
Janneke Nieuwenhuizen
d32a5f6eed
system: examples: Fix typo in bare-hurd.tmpl.
* gnu/system/examples/bare-hurd.tmpl: Add missing line-continuation backslash.

Change-Id: Ib918cff3ca96f2a199869e876b6a75fedb09c983
2024-12-18 21:31:43 +01:00
Janneke Nieuwenhuizen
a316319668
gnu: Add tests/shadow.scm
This is a follow-up to commit
    a1ecd7f56c
    system: Add /etc/subuid and /etc/subgid support.

This file was already registered in gnu/local.mk.

* gnu/tests/shadow.scm: New file.

Change-Id: I1785206d56357f8262bd4277ef48f29183c47adc
2024-12-18 21:31:43 +01:00
Ludovic Courtès
777fde8299
etc: ungraft: Use ‘package-mapping’ directly.
* etc/manifests/ungraft.scm (ungraft): New procedure.
<top-level>: Use it.  Remove ‘ungraft-all’.

Change-Id: I6f1badf06dad9116d4242c7d1fff5ca53e6522f8
2024-12-18 18:32:41 +01:00
Ludovic Courtès
0107b771bd
etc: upgrade: Really compute joint upgrades.
Previously, since input rewriting did not happen recursively, libgcrypt
would for instance be built against the old libgpg-error.

* etc/manifests/upgrade.scm (joint-security-upgrades): Pass #:recursive? #t
to ‘package-input-rewriting’.

Change-Id: I7daaa11629aa12b833ca941a3a996c3db2754a7a
2024-12-18 18:32:41 +01:00
Ludovic Courtès
5316e84e1b
packages: Add #:recursive? to ‘package-input-rewriting’.
* guix/packages.scm (package-input-rewriting): Add #:recursive?
[cut?]: Honor it.
* tests/packages.scm ("package-input-rewriting, recursive"): New test.
* doc/guix.texi (Defining Package Variants): Document it.

Change-Id: Ie82f35ae0ae873dc68f8b1c0dd6616f552772e65
2024-12-18 18:32:41 +01:00
Giacomo Leidi
2767b4ef03
services: Add rootless-podman-service-type.
* gnu/services/containers.scm: New file;
(rootless-podman-configuration): new variable;
(rootless-podman-service-subids): new variable;
(rootless-podman-service-accounts): new variable;
(rootless-podman-service-profile): new variable;
(rootless-podman-shepherd-services): new variable;
(rootless-podman-service-etc): new variable;
(rootless-podman-service-type): new variable.
* gnu/local.mk: Test it.
* gnu/local.mk: Add them.
* doc/guix.texi (Miscellaneous Services): Document it.

Change-Id: I041496474c1027da353bd6852f2554a065914d7a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:41 +01:00
Giacomo Leidi
17e5ca8190
services: iptables: Provide a default value.
There doesn't seem to be a reason to force users to write

(service iptables-service-type
         (iptables-configuration))

instead of simply

(service iptables-service-type)

This patch provides a default value for the iptables-service-type.

* gnu/services/networking.scm (iptables-service-type): Set default-value.

Change-Id: I93b6c544dfb064c7a0a999549dff61007a38f842
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:41 +01:00
Giacomo Leidi
9411a1495f
services: pam: Allow extension of pam limits.
* gnu/services/pam.scm (pam-limits-service-type): Allow extension of pam
limits rules from users and services.

Change-Id: I93a363d1a2887493d52ef3ae32fc9721f81ddfa8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:40 +01:00
Giacomo Leidi
3eb720bd0b
system: pam: Export pam records predicates.
* gnu/system/pam.scm: Export pam-service-name?, pam-entry? and pam-limits-entry?.

Change-Id: I609acfcaae85b4969dc385b72b307e470f5a246e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:40 +01:00
Giacomo Leidi
a1ecd7f56c
system: Add /etc/subuid and /etc/subgid support.
This commit adds a Guix System service to handle allocation of subuid
and subgid requests.  Users that don't care can just add themselves as a
subid-range and don't need to specify anything but their user name.
Users that care about specific ranges, such as possibly LXD, can specify
a start and a count.

* doc/guix.texi (Miscellaneous Services): Document it.
* gnu/build/activation.scm (activate-subuids+subgids): New variable.
* gnu/local.mk: Add gnu/tests/shadow.scm.
* gnu/system/accounts.scm (sexp->subid-range): New variable.
* gnu/system/shadow.scm (%root-subid): New variable;
(subids-configuration): new record;
(subid-range->gexp): new variable;
(assert-valid-subids): new variable;
(delete-duplicate-ranges): new variable;
(subids-activation): new variable;
(subids-extension): new record;
(append-subid-ranges): new variable;
(subids-extension-merge): new variable;
(subids-service-type): new variable.
* gnu/tests/shadow.scm (subids): New system test.

Change-Id: I3755e1c75771220c74fe8ae5de1a7d90f2376635
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:40 +01:00
Giacomo Leidi
337037d22c
accounts: Add /etc/subid and /etc/subgid allocation logic.
This commit adds allocation logic for subid ranges. Subid ranges are
ranges of contiguous subids that are mapped to a user in the host
system. This patch implements a flexible allocation algorithm allowing
users that do not want (or need) to specify details of the subid ranges
that they are requesting to avoid doing so, while upholding requests of
users that need to have specific ranges.

* gnu/build/accounts.scm (%subordinate-id-min): New variable;
(%subordinate-id-max): new variable;
(%subordinate-id-count): new variable;
(subordinate-id?): new variable;
(&subordinate-id-error): new variable;
(&subordinate-id-overflow-error): new variable;
(&illegal-subid-range-error): new variable;
(&specific-subid-range-expected-error): new variable;
(&generic-subid-range-expected-error): new variable;
(within-interval?): new variable;
(allocate-unused-range): new variable;
(allocate-generic-range): new variable;
(allocate-specific-range): new variable;
(reserve-subids): new variable;
(range->entry): new variable;
(entry->range): new variable;
(allocate-subids): new variable;
(subuid+subgid-databases): new variable.

* gnu/system/accounts.scm (subid-range-end): New variable;
(subid-range-has-start?): new variable;
(subid-range-less): new variable.

* test/accounts.scm: Test them.

Change-Id: I8de1fd7cfe508b9c76408064d6f498471da0752d
Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:40 +01:00
Giacomo Leidi
58f430f69e
accounts: Add /etc/subuid and /etc/subgid support.
This commit adds a new record type, <subid-entry> and serializers
and deserializers for it in (gnu build accounts).  Each instance of this
record represents one line in either /etc/subuid or /etc/subgid.  Since
Shadow uses the same representation for both files, it should be ok if
we do it as well.

This commit adds also <subid-range>, a user facing representation of
<subid-entry>. It is supposed to be usable directly in OS configurations.

* gnu/build/accounts.scm (subid-entry): New record;
(write-subgid): add serializer for subgids;
(write-subuid): add serializer for subuids;
(read-subgid): add serializer for subgids;
(read-subuid): add serializer for subuids.
* gnu/system/accounts.scm (subid-range): New record.
* test/accounts.scm: Test them.

Change-Id: I6b037e40e354c069bf556412bb5b626bd3ea1b2c
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-12-18 18:32:40 +01:00
Julien Lepiller
478b9ccea8
gramps: Update to 5.2.3.
* gnu/packages/genealogy.scm (gramps): Update to 5.2.3.

Change-Id: Icfd3470989da905d50233564b894887305e9de1e
2024-12-18 18:24:17 +01:00
Janneke Nieuwenhuizen
7c1199828b
system: examples: Update instructions in {bare,devel}-hurd64.tmpl.
* gnu/system/examples/bare-hurd64.tmpl: Remove --machine q35, there seems to
be no longer any need for this.  Mention that there is no login prompt.
* gnu/system/examples/devel-hurd64.tmpl: Likewise.

Change-Id: Ib918cff3ca96f2a199869e876b6a75fedb09c983
2024-12-18 17:00:13 +01:00
Hilton Chain
573f47a2b0
gnu: Add privacy-redirect-icecat.
* gnu/packages/browser-extensions.scm (privacy-redirect)
(privacy-redirect/icecat): New variables.

Change-Id: I92778c4b46a30f88f23758cc65837b4aecccbd09
2024-12-18 22:57:11 +08:00
Hilton Chain
0e4b36f21c
gnu: Add livemarks-icecat.
* gnu/packages/browser-extensions.scm (livemarks,livemarks/icecat): New
variables.

Change-Id: Ie13563ac62ed2d39c5b52e681c6f9351dbdab41c
2024-12-18 22:57:11 +08:00
Hilton Chain
014fc1894f
gnu: Add adaptive-tab-bar-colour-icecat.
* gnu/packages/browser-extensions.scm (adaptive-tab-bar-colour)
(adaptive-tab-bar-colour/icecat): New variables.

Change-Id: I94343ef4246b1a7a0f5606b7d2214174475e7f03
2024-12-18 22:57:11 +08:00
Hilton Chain
396eb759d4
gnu: librewolf: Support Guix icecat browser extensions.
* gnu/packages/patches/librewolf-use-system-wide-dir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Regisiter it.
* gnu/packages/librewolf.scm (make-librewolf-source)[patches]: Add it along with
torbrowser-compare-paths.patch.
(librewolf)[native-search-paths]: Add ICECAT_SYSTEM_DIR.

Change-Id: I8609d25a7e2725ad94ab257d720326639eb06778
2024-12-18 22:57:11 +08:00