me
/
guix
Archived
1
0
Fork 0
Commit Graph

136627 Commits (5a7cb59648d102168bd4ecd16f36b69e0f594be1)

Author SHA1 Message Date
Ludovic Courtès 5a7cb59648
deduplication: Detect holes and create sparse files.
This reduces disk usage of sparse files that are substituted such as
Guile object files (ELF files).  As of Guile 3.0.9, .go files are sparse
due to ELF sections being aligned on 64 KiB boundaries.

This reduces disk usage reported by “du -sh” by 9% for the ‘guix’
package, by 23% for ‘guile’, and by 35% for ‘guile-git’.

* guix/store/deduplication.scm (hole-size, find-holes): New procedures.
(tee)[seekable?]: New variable.
[read!]: Add case when SEEKABLE? is true.
* tests/store-deduplication.scm (cartesian-product): New procedure.
("copy-file/deduplicate, sparse files (holes: ~a/~a/~a)"): New test set.

Change-Id: Iad2ab7830dcb1220e2026f4a127a6c718afa8964
2024-05-25 16:44:42 +02:00
Ludovic Courtès 73b3f941d7
maint: Suggest ‘guix git authenticate’ for initial authentication.
The previous recommendation, running ‘make authenticate’, was insecure
because it led users to run code from the very repository they want to
authenticate:

  https://lists.gnu.org/archive/html/guix-devel/2024-04/msg00252.html

* Makefile.am (commit_v1_0_0, channel_intro_commit)
(channel_intro_signer, GUIX_GIT_KEYRING, authenticate): Remove.
* Makefile.am (.git/hooks/%): New target, generalization of previous
‘.git/hooks/pre-push’ target.
(nodist_noinst_DATA): Add ‘.git/hooks/post-merge’.
* doc/contributing.texi (Building from Git): Suggest ‘guix git
authenticate’ instead of ‘make authenticate’.
* etc/git/post-merge: New file.
* etc/git/pre-push: Run ‘guix git authenticate’ instead of ‘make
authenticate’.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Reported-by: Skyler Ferris <skyvine@protonmail.com>
Change-Id: Ia415aa8375013d0dd095e891116f6ce841d93efd
2024-05-25 16:23:56 +02:00
Richard Sent 0efa1daad3
doc: Document ‘assume-valid-file-name’ in ‘local-file’.
* doc/guix.texi (G-Expressions): Document the use of assume-valid-file-name with
local-file.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I132f78e198cbf3ba2e5a677d671563d753de534c
2024-05-25 16:19:22 +02:00
Giacomo Leidi be868f69aa
gnu: Add tests for oci-container-service-type.
* gnu/tests/docker.scm (run-oci-container-test): New variable;
(%test-oci-container): new variable.

Change-Id: Idefc3840bdc6e0ed4264e8f27373cd9a670f87a0
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25 15:34:57 +02:00
Giacomo Leidi c07731a777
gnu: docker: Allow passing tarballs for images in oci-container-configuration.
This commit allows for loading an OCI image tarball before running an
OCI backed Shepherd service. It does so by adding a one shot Shepherd
service to the dependencies of the OCI backed service that at boot runs
docker load on the tarball.

* gnu/services/docker.scm (oci-image): New record;
(lower-oci-image): new variable, lower it;
(string-or-oci-image?): sanitize it;
(oci-container-configuration)[image]: allow also for oci-image records;
(oci-container-shepherd-service): use it;
(%oci-image-loader): new variable.

Change-Id: Ie504f479ea0d47f74b0ec5df9085673ffd3f639d
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25 15:34:53 +02:00
Giacomo Leidi 68adfaea25
gnu: docker: Allow setting Shepherd dependencies in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration)
[requirement]: New field;
(list-of-symbols): sanitize it;
(oci-container-shepherd-service): use it.
* doc/guix.texi: Document it.

Change-Id: Ic0ba336a2257d6ef7c658cfc6cd630116661f581
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25 15:34:47 +02:00
Giacomo Leidi e68c1af4f4
gnu: docker: Allow setting host environment variables in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration)
[host-environment]: New field;
(oci-sanitize-host-environment): sanitize it;
(oci-container-shepherd-service): use it.
* doc/guix.texi: Document it.

Change-Id: I4d54d37736cf09f042a71cb0b6e673abc0948d9c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25 15:34:43 +02:00
Giacomo Leidi 003c89a85c
gnu: docker: Provide escape hatch in oci-container-configuration.
* gnu/services/docker.scm (exports): Add missing procedures;
(oci-container-service-type)[description]: Docker and OCI images should
mean the same thing;
(oci-container-configuration): clarify field types;
[extra-arguments]: new field;
(oci-sanitize-extra-arguments): sanitize it;
(oci-container-shepherd-service): use it.
* doc/guix.texi: Document it.

Change-Id: I64e9d82c8ae538d59d1c482f23070a880156ddf7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25 15:34:38 +02:00
Giacomo Leidi a237f0d436
services: Add restic-backup service.
* gnu/services/backup.scm: New file.
* gnu/local.mk: Add this.
* doc/guix.texi: Document this.

Change-Id: I9efd5559bb445b484107a7c27c2d0a65ccad1e66
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25 15:24:14 +02:00
Ludovic Courtès cbac0b1db0
environment: Fix type error with ‘-C’ when ‘getpwuid’ fails.
Fixes a bug with ‘guix shell -C …’ in cases where ‘getpwuid’
returns #f (for example because nscd isn’t running) and
‘user’ is #f.

* guix/scripts/environment.scm (launch-environment/container): Use
‘name’ when building the ‘directory’ value, not ‘user’ since it can be #f.

Change-Id: I5da807d982a1edbb4122ac29b5a1e5fc4b0ce1b7
2024-05-25 15:10:11 +02:00
Guillaume Le Vaillant 9756d9d634
gnu: cl-nodgui: Update to 0.6.2.0-1.9d0c973.
* gnu/packages/lisp-xyz.scm (sbcl-nodgui): Update to 0.6.2.0-1.9d0c973.
  [inputs]: Add sbcl-flexi-streams, sbcl-static-vectors,
  sbcl-trivial-garbage. Move sbcl-clunit2 to...
  [native-inputs]: ... here.

Change-Id: I2299175a06786ce93fde34aa54005c00b40edd71
2024-05-25 11:16:09 +02:00
Guillaume Le Vaillant 8ca6e63b00
gnu: cl-access: Update to 1.6.0-1.a4f87fc.
* gnu/packages/lisp-xyz.scm (sbcl-access): Update to 1.6.0-1.a4f87fc.
  [source, home-page]: Switch to maintained repository.
  [inputs]: Remove sbcl-anaphora and sbcl-cl-interpol. Add sbcl-cl-ppcre.

Change-Id: Idbc140b1264156e975b69ab65423765d5f5a77d1
2024-05-25 11:04:33 +02:00
Guillaume Le Vaillant 1fa8997f6f
gnu: cl-stmx: Update to 2.0.5-3.95f7dea.
* gnu/packages/lisp-xyz.scm (sbcl-stmx): Update to 2.0.5-3.95f7dea.
  [arguments]: Remove 'fix-build' phase.

Change-Id: I72e3f323f38ced32ea03ab2661d5802e93e13572
2024-05-25 10:52:53 +02:00
Guillaume Le Vaillant 199e8f9581
gnu: cl-collectors: Update to 1.0-2.4c5e70c.
* gnu/packages/lisp-xyz.scm (sbcl-collectors): Update to 1.0-2.4c5e70c.

Change-Id: I95c9beb1aa5e59b658ee091ab14d803e6eded3fe
2024-05-25 10:47:19 +02:00
Guillaume Le Vaillant 2ac3d61ca3
gnu: cl-cf: Update to 1.0-2.fbc025b.
* gnu/packages/lisp-xyz.scm (sbcl-cf): Update to 1.0-2.fbc025b.

Change-Id: Ide38475fb171f71c5dc35bb12d66a81b0f08cf64
2024-05-25 10:43:13 +02:00
Efraim Flashner c5e63e19ac
gnu: gssdp-1.4: Fix building.
This is a follow-up to 9901416233.

* gnu/packages/gnome.scm (gssdp-1.4)[arguments]: Override inherited
arguments to set the configure-flags specifically.

Change-Id: Ifbdaf278a402a26b344b6dcd7a5e3d4e22148561
2024-05-24 16:45:41 +03:00
Efraim Flashner 9901416233
gnu: ctl: Update to 1.5.3.
* gnu/packages/graphics.scm (ctl): Update to 1.5.3.
[source]: Download using git-fetch.
[arguments]: Don't skip the tests.
[inputs]: Add libtiff.

Change-Id: Iae08b6a2a7c0418bde10b31c3356425750703a9f
2024-05-23 20:39:13 +03:00
Efraim Flashner 7e762ab09e
gnu: roxterm: Fix lint errors.
* gnu/packages/terminals.scm (roxterm)[source]: Add the file-name field.
Follow source url redirect.
[home-page]: Follow redirect.

Change-Id: Id68c87679a95656212c0c0edb916066e90a037d7
2024-05-23 20:39:13 +03:00
Efraim Flashner 0ad3cc75ae
gnu: shared-mime-info: Fix cross-compiling.
* gnu/packages/freedesktop.scm (shared-mime-info)[native-inputs]: When
cross-compiling add libxml2 and this-package.

Change-Id: I254a685a492b9080342b134ff23d9ccab0ecec3d
2024-05-23 20:39:13 +03:00
Efraim Flashner 4ab8657b23
gnu: libbraille: Fix build on some architectures.
* gnu/packages/accessibility.scm (libbraille)[arguments]: When building
with config as a native-input replace the config.guess and config.sub
files.
[native-inputs]: When building for aarch64-linux, powerpc64le-linux or
riscv64-linux add config.

Change-Id: I7e7953a2b91868fa3f2698d3cb82da134564c06b
2024-05-23 20:39:13 +03:00
Efraim Flashner 1bfffc007a
gnu: gtk-vnc: Build with gjs on more architectures.
* gnu/packages/gnome.scm (gtk-vnc)[native-inputs] Use gjs as an input on
architectures where it is supported.

Change-Id: I723f53be8e225732572ede81a03d712a946be528
2024-05-23 20:39:13 +03:00
Efraim Flashner c9730b7029
gnu: glade3: Build with gjs on more architectures.
* gnu/packages/gnome.scm (glade3)[inputs]: Use gjs as an input on
architectures where it is supported.

Change-Id: I6d6596045b7a3f0dc22207350b353fcd82961958
2024-05-23 20:39:13 +03:00
Efraim Flashner 701aee876e
gnu: gtk-vnc: Build without node.
* gnu/packages/gnome.scm (gtk-vnc)[native-inputs]: Remove node.

Change-Id: I35b4be1fa203cf75da3d88f078ac0fc613a60489
2024-05-23 20:39:13 +03:00
Efraim Flashner 3694221290
gnu: brltty: Build with java only on some architectures.
* gnu/packages/accessibility.scm (brltty)[native-inputs]: Only build
with icedtea on x86_64-linux, i686-linux and aarch64-linux.

Change-Id: I95e2cfa17c1f484677ad8f26e3a865eba83362dd
2024-05-23 20:39:13 +03:00
Efraim Flashner 055d70f5d8
gnu: gnome-text-editor: Build with cmake-minimal.
* gnu/packages/gnome.scm (gnome-text-editor)[native-inputs]: Replace
cmake with cmake-minimal.

Change-Id: I3e23fb390896ab9f1fb3be36789fbe84df04ae36
2024-05-23 20:39:13 +03:00
Efraim Flashner 114333956e
gnu: gnome-meta-core-utilities: Add eog unconditionally.
eog was removed because it required librsvg built with rust, but
gnome-shell also requires the same librsvg already, so there was no
reason to limit the architectures eog was installed on.

* gnu/packages/gnome.scm (gnome-meta-core-utilities)[propagated-inputs]:
Add eog unconditionally.

Change-Id: I333d1a712b1d04409f3deccc90aa5adb2a4fac1b
2024-05-23 20:39:13 +03:00
Efraim Flashner 02427ea997
gnu: gssdp: Enable building on more architectures.
* gnu/packages/gnome.scm (gssdp)[arguments]: Adjust configure-flags to
only build the manpages when pandoc is an input.
[native-inputs]: Only add pandoc when on architectures where it is
supported.

Change-Id: I6e69833295fc19b311cdaf977b3b5cc7abc01589
2024-05-23 20:39:09 +03:00
Sharlatan Hellseher 016fd7720d
gnu: Add specification-ipld.
* gnu/packages/specifications.scm (specification-ipld): New variable.

Change-Id: Ib36d0cdb4a6d20da789ba20830945c8a7d223b69
2024-05-23 15:55:55 +01:00
Sharlatan Hellseher a67218efee
gnu: kubo: Remove propagated package.
* gnu/packages/ipfs.scm (kubo)
[inputs]: Remove go-golang-org-x-text. Add annotation for indirect
inputs where they are needed for.

Change-Id: I90eb26ab5d386a70f3581030ef4b3f9b35e05e88
2024-05-23 15:39:40 +01:00
Efraim Flashner aeba4849b4
gnu: abseil-cpp: Fix linking on riscv64-linux.
* gnu/packages/cpp.scm (abseil-cpp)[arguments]: When building for
riscv64-linux adjust the configure-flags to link with latomic.

Change-Id: I12099d1a99b54f20f7ddbba2fbd495379a05476b
2024-05-23 08:56:41 +03:00
Timotej Lazar 28b336d02e
gnu: wireshark: Update to 4.2.5 [security fixes].
Fixes CVE-2024-4853, CVE-2024-4854, CVE-2024-4855.

* gnu/packages/networking.scm (wireshark): Update to 4.2.5.

Change-Id: I1f60714bbea05a44d78f420404af5044d344fd12
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 13:28:19 +08:00
Nicolas Graves via Guix-patches via 63ee61a56d
gnu: dcmtk: Update to 3.6.8. [security-fixes]
This fixes CVE-2022-43272.

* gnu/packages/image-processing.scm (dcmtk): Update to 3.6.8.

Change-Id: I4e0203219280a2571267f566cdfc8c2a9ea3fd18
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 13:24:50 +08:00
Tomas Volf 2d49d727b3
gnu: podman: Update to 5.0.3 [security fixes].
This fixes CVE-2024-3727.

* gnu/packages/containers.scm (podman): Update to 5.0.3.

Change-Id: Iefe98746c993830ef12c49733b8407b10305d065
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 13:18:31 +08:00
Tomas Volf 792155da11
gnu: buildah: Update to 1.35.4 [security fixes].
This fixes CVE-2024-3727 and CVE-2024-28180.

* gnu/packages/containers.scm (buildah): Update to 1.35.4.

Change-Id: I5ee2b4591b39ee85d7236aedda7a2508df8e0e48
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 13:09:18 +08:00
Tomas Volf 4fbce61aa9
gnu: skopeo: Update to 1.15.1 [security fixes].
This fixes CVE-2024-3727.

* gnu/packages/virtualization.scm (skopeo): Update to 1.15.1.

Change-Id: Icebb6f50e7317bce9ff106d71ad30dcfa6665666
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 13:01:23 +08:00
Artyom V. Poptsov 90514e3c1d
gnu: bvi: Update to 1.4.2.
* gnu/packages/hexedit.scm (bvi): Update to 1.4.2.

Change-Id: I9ac29adb8707f6daf61f397778a1f94b94f808ae
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 11:52:12 +08:00
Tomas Volf 940fbce604
gnu: passt: Update to 2024_05_10.7288448.
* gnu/packages/containers.scm (passt): Update to 2024_05_10.7288448.

Change-Id: Ic7b1e3423ad18c0ce0f06ce111f3dfdab04e860f
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 11:45:53 +08:00
Andy Tai d4118a34e3
gnu: Add pkcs11-helper.
* gnu/packages/security-token.scm (pkcs11-helper): New variable.

Change-Id: Ib17e0cf209a6fe797d0c797829ba91091b719028
Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-05-23 11:39:50 +08:00
Sharlatan Hellseher c3fe248e69
gnu: kubo: Unbundle go-github-com-quic-go-quic-go.
* gnu/packages/ipfs.scm (kubo): Unbundle go-github-com-quic-go-quic-go.
[inputs]: Remove go-github-com-francoispqt-gojay and
go-github-com-gogo-protobuf; add go-github-com-quic-go-quic-go.

Change-Id: I4838bfed195b5e094f68ef73333ce9c7c7c7566e
2024-05-23 00:45:44 +01:00
Sharlatan Hellseher 2234a1f282
gnu: Remove go-github-com-lucas-clemente-quic-go.
* gnu/packages/golang-web.scm (go-github-com-lucas-clemente-quic-go): Delete variable.

Change-Id: Iac5dfdf15badb1de74323040267f814cdf7cd0f9
2024-05-23 00:45:43 +01:00
Sharlatan Hellseher 120ad702e0
gnu: go-github-com-quic-go-quic-go: Enable tests.
* gnu/packages/golang-web.scm (go-github-com-quic-go-quic-go): Enable tests.
[arguments] <#:phases>: Add 'remove-failing-tests. Use custom 'check
phase.
[propagated-inputs]: Remove go-github-com-cheekybits-genny,
go-github-com-golang-protobuf-proto,
go-github-com-marten-seemann-chacha20, and
go-github-com-quic-go-qtls-go1-20; add
go-github-com-francoispqt-gojay.
[native-inputs]: Add go-ginkgo, go-github-com-onsi-ginkgo-v2,
go-go-uber-org-mock, and go-golang-org-x-time.

Change-Id: I8bc03cbe1e9766188157e621f4d7f9e3a7f6adeb
2024-05-23 00:45:43 +01:00
Sharlatan Hellseher 3ebb39eb42
gnu: go-github-com-syndtr-goleveldb-leveldb: Move to golang-xyz.
* gnu/packages/golang.scm (go-github-com-syndtr-goleveldb-leveldb): Move
from here ...
* gnu/packages/golang-xyz.scm: ... to here.

Change-Id: Ib457abe33612b371c33985c6b3b0e9372221e37d
2024-05-23 00:45:43 +01:00
Sharlatan Hellseher a3318b4ede
gnu: go-github-com-syndtr-goleveldb-leveldb: Use go-1.21.
* gnu/packages/golang.scm (go-github-com-syndtr-goleveldb-leveldb)
[arguments] <#:go>: Swap to go-1.21.

Change-Id: I6ecbfb8d2cbf29dc177536345fb1caa5001f35df
2024-05-23 00:32:37 +01:00
Sharlatan Hellseher 8c6fb68203
gnu: Add go-ginkgo.
* gnu/packages/golang-check.scm (go-ginkgo): New variable.

Change-Id: I5c56c87a75c383ec159cee4e7eaa7808bfdcd1f7
2024-05-22 23:44:02 +01:00
Sharlatan Hellseher fb8ddfc57f
gnu: go-github-com-onsi-gomega: Update to 1.33.1.
* gnu/packages/golang-check.scm (go-github-com-onsi-gomega): Update to 1.33.1.
[arguments] <#:go>: Swap to go-1.21.
[propagated-inputs]: Remove go-gopkg-in-yaml-v2; add go-gopkg-in-yaml-v3.

Change-Id: I910206fd44198550bdc7da1ebdaff3874d89f1ed
2024-05-22 23:43:22 +01:00
Sharlatan Hellseher 003a65cafa
gnu: go-github-com-onsi-ginkgo-v2: Update to 2.18.0.
* gnu/packages/golang-check.scm (go-github-com-onsi-ginkgo-v2): Update to 2.18.0.
[propagated-inputs]: Remove go-github-com-go-task-slim-sprig; add
go-github-com-go-task-slim-sprig-v3 and go-github-com-google-pprof.

Change-Id: I3af9d36e1428745557173135fcaa1e4623d4f57f
2024-05-22 23:16:16 +01:00
Sharlatan Hellseher 265452e122
gnu: Add go-github-com-go-task-slim-sprig-v3.
* gnu/packages/golang-xyz.scm (go-github-com-go-task-slim-sprig-v3): New
variable.

Change-Id: I46ef3728993556dfc2d6c9349da6962d747e2664
2024-05-22 23:12:35 +01:00
Sharlatan Hellseher 33a2644963
gnu: go-github-com-go-task-slim-sprig: Enable tests.
* gnu/packages/golang-xyz.scm (go-github-com-go-task-slim-sprig)
[arguments] <#:tests>: Enable it.
<#:phases>: Add 'remove-failing-tests phase.

Change-Id: I32424925a96defd69e2871dee079db8bef2861b2
2024-05-22 22:59:00 +01:00
Sharlatan Hellseher 697252da1c
gnu: go-github-com-go-task-slim-sprig: Move to golang-xyz.
* gnu/packages/golang.scm (go-github-com-go-task-slim-sprig): Move from
here ...
* gnu/packages/golang-xyz.scm: ... to here.

Change-Id: I540e4211e7e4006d654c7da40bba35e2bd577c78
2024-05-22 22:50:07 +01:00
Sharlatan Hellseher 0cc9d66b45
gnu: Add go-go-uber-org-mock.
* gnu/packages/golang-check.scm (go-go-uber-org-mock): New variable.

Change-Id: I9028edc15f1acd3301fde3a49eae8cc28568c6a5
2024-05-22 22:22:24 +01:00