Commit graph

98811 commits

Author SHA1 Message Date
Ludovic Courtès
4ff12d1de7
profiles: Do not repeat entries in 'manifest' file.
Fixes <https://issues.guix.gnu.org/55499>.
Reported by Ricardo Wurmus <rekado@elephly.net>.

With this change, the manifest file created for:

  guix install r r-seurat r-cistopic r-monocle3 r-cicero-monocle3 r-assertthat

goes from 5.7M to 176K.  Likewise, on this profile, wall-clock time of:

  GUIX_PROFILING=gc guix package -I

goes from 0.7s to 0.1s, with heap usage going from 55M to 9M.

* guix/profiles.scm (manifest->gexp)[optional]: New procedure.
[entry->gexp]: Turn into a monadic procedure.  Return a 'repeated' sexp
if ENTRY was already visited before.
Adjust caller accordingly.  Bump manifest version.
(sexp->manifest)[sexp->manifest-entry]: Turn into a monadic procedure.
Add case for 'repeated' nodes.  Add each entry to the current state
vhash.
Add clause for version 4 manifests.
[sexp->manifest-entry/v3]: New procedure, with former
'sexp->manifest-entry' code.
* tests/profiles.scm ("deduplication of repeated entries"): New test.
* guix/build/profiles.scm (manifest-sexp->inputs+search-paths)[let-fields]:
New macro.
Use it.  Expect version 4.  Add clause for 'repeated' nodes.
2022-07-01 23:29:16 +02:00
Ludovic Courtès
9b8c442b25
tests: Augment profile collision test.
* tests/profiles.scm ("collision of propagated inputs"): Check the
parents of ENTRY1 and ENTRY2.
2022-07-01 23:29:16 +02:00
Ludovic Courtès
bf7e07d299
services: openssh: Listen on IPv6 only when IPv6 is supported.
Fixes <https://issues.guix.gnu.org/56327>.
Reported by André Batista <nandre@riseup.net>.

* gnu/services/ssh.scm (openssh-shepherd-service)[ipv6-support?]: New
variable.
Use it in 'start' method.
2022-07-01 23:29:16 +02:00
Ludovic Courtès
b512dadfd6
upstream: 'guix refresh -u' no longer stops when upstream info is lacking.
Fixes <https://issues.guix.gnu.org/56338>.

Starting from 53b9c27aa5, 'guix refresh -u'
would stop upon the first failure to determine upstream releases.  This
fixes that.

* guix/upstream.scm (package-update): Warn rather than update.
2022-07-01 23:29:15 +02:00
Sughosha
aba1ee5553
gnu: Add luppp.
* gnu/packages/music.scm (luppp): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 19:12:01 +02:00
Sughosha
697e75fca5
gnu: Add fabla.
* gnu/packages/music.scm (fabla): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 19:08:46 +02:00
Sughosha
3b19dbd703
gnu: sorcer: Update to 1.1.3-1.cc7f6f5.
* gnu/packages/music.scm (sorcer): Update to 1.1.3-1.cc7f6f5.
[source]: Fetch with git; remove generated C++ file.
[native-inputs]: Replace faust with faust-0.9.67.

This update fixes the building of the package.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 19:03:48 +02:00
Ricardo Wurmus
0fce0b9267
gnu: Add faust-0.9.67.
* gnu/packages/audio.scm (faust-0.9.67): New variable.
2022-07-01 19:03:44 +02:00
Leo Famulari
1f88c25bdc
gnu: linux-libre 5.4: Update to 5.4.202.
* gnu/packages/linux.scm (linux-libre-5.4-version): Update to 5.4.202.
(linux-libre-5.4-pristine-source): Update hash.
2022-07-01 11:32:29 -04:00
Leo Famulari
13e0afe6cb
gnu: linux-libre 5.10: Update to 5.10.127.
* gnu/packages/linux.scm (linux-libre-5.10-version): Update to 5.10.127.
(linux-libre-5.10-pristine-source): Update hash.
2022-07-01 11:32:29 -04:00
Leo Famulari
ce9fbdd413
gnu: linux-libre 5.15: Update to 5.15.51.
* gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.51.
(linux-libre-5.15-pristine-source): Update hash.
2022-07-01 11:32:28 -04:00
Leo Famulari
a90158a9e4
gnu: linux-libre: Update to 5.18.8.
* gnu/packages/linux.scm (linux-libre-5.18-version): Update to 5.18.8.
(linux-libre-5.18-pristine-source): Update hash.
2022-07-01 11:32:22 -04:00
Jan (janneke) Nieuwenhuizen
f8273f8225
gnu: dezyne: Update to 2.15.3.
* gnu/packages/dezyne.scm (dezyne)[source]: Update to 2.15.3.
2022-07-01 15:45:44 +02:00
Jan (janneke) Nieuwenhuizen
36a0ec9e78
gnu: mcrl2: Update to 202206.0.
* gnu/packages/patches/mcrl2-fix-1687.patch,
gnu/packages/patches/mcrl2-fix-counterexample.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/maths.scm (mcrl2): Update to 202206.0 and use them.
2022-07-01 15:45:37 +02:00
Ricardo Wurmus
81cf674a5d
gnu: Add python-ikarus.
* gnu/packages/bioinformatics.scm (python-ikarus): New variable.
2022-07-01 14:54:26 +02:00
Ludovic Courtès
741895676b
tests: Add sanitizer test.
* tests/records.scm ("define-record-type* & sanitize without default
value"): New test.
2022-07-01 12:10:29 +02:00
Ludovic Courtès
0dab106a6a
image: Add sanitizers for 'format' and 'partition-table-type'.
This allows common mistakes to be diagnosed early.

* gnu/image.scm (define-set-sanitizer): New macro.
(validate-image-format, validate-partition-table-type): New sanitizers.
(<image>)[format, partition-table-type]: Add 'sanitize' property.
2022-07-01 12:10:29 +02:00
Ludovic Courtès
05a759ab36
image: Raise an error when an image lacks a bootable partition.
* gnu/system/image.scm (find-root-partition): Raise an error when 'find'
returns #f.
2022-07-01 12:10:28 +02:00
Ludovic Courtès
ed19bc87e4
image: Avoid use of the deprecated 'gpt' option of genimage.
* gnu/system/image.scm (system-disk-image)[genimage-type-options]: Use
'partition-table-type' instead of the deprecated 'gpt' option.
2022-07-01 12:10:28 +02:00
Ludovic Courtès
9f530ef38a
image: Add default value for partition initializer.
Previously, the default value would lead to a wrong-type-to-apply crash.

* gnu/system/image.scm (system-disk-image)[image-builder]: When
'partition-initializer' returns #f, fall back to
INITIALIZE-ROOT-PARTITION.
* gnu/tests/base.scm (run-root-unmount-test)[test-image]: Remove
'initializer' field of partition.
* gnu/image.scm (<partition>)[initializer]: Add comment.
2022-07-01 12:10:28 +02:00
Ludovic Courtès
e871c3a857
image: 'system-image' throws when given an incorrect image format.
Previously 'system-image' would return *unspecified* in that case,
leading to a wrong-type-arg error crash down the road.

* gnu/system/image.scm (system-image): Add 'else' clause.
2022-07-01 12:10:28 +02:00
Ludovic Courtès
0483c71cc5
services: root-file-system: Cleanly unmount upon shutdown.
Fixes <https://issues.guix.gnu.org/56209>.
Reported by angry rectangle <angryrectangle@cock.li>.

* gnu/packages/admin.scm (shepherd-0.9)[modules, snippet]: New fields.
* gnu/services/base.scm (%root-file-system-shepherd-service): In 'stop'
method, remove 'call-with-blocked-asyncs'.  When 'mount' throws to
'system-error, call (@ (fibers) sleep) and try again.
* gnu/tests/base.scm (run-root-unmount-test): New procedure.
(%test-root-unmount): New variable.
2022-07-01 12:10:28 +02:00
Ludovic Courtès
4636640de8
file-systems: Add 'cleanly-unmounted-ext2?'.
* gnu/build/file-systems.scm (ext2-superblock-cleanly-unmounted?)
(cleanly-unmounted-ext2?): New procedures.
2022-07-01 12:10:28 +02:00
Ludovic Courtès
2199af9f7b
gnu: texlive-fmtcount: Add proper 'license' value.
This is a followup to df5e07c16d.

* gnu/packages/tex.scm (texlive-fmtcount)[license]: New field.
2022-07-01 12:10:27 +02:00
Christopher Baines
b5c6062bce
services: nginx: Add support for extra content in upstream blocks.
I'm looking at this as I'd like to use the keepalive functionality.

* gnu/services/web.scm (nginx-upstream-configuration-extra-content): New
procedure.
(emit-nginx-upstream-config): Include the extra-content if applicable.
* doc/guix.texi (NGINX): Document this.
2022-07-01 09:45:28 +01:00
Luis Henrique Gomes Higino
9a2a77b6ad
gnu: grip: Update to 4.6.1.
* gnu/packages/python-web.scm (grip): Update to 4.6.1.
(arguments): Use a gexp.

Signed-off-by: Christopher Baines <mail@cbaines.net>
2022-07-01 09:45:28 +01:00
Christopher Baines
09aeabb9d3
services: guix: Support guix-build-coordinator parallel hooks.
* gnu/services/guix.scm (guix-build-coordinator-configuration-parallel-hooks):
New procedure.
(make-guix-build-coordinator-start-script): Accept and use #:parallel-hooks.
(guix-build-coordinator-shepherd-services): Pass parallel-hooks to
make-guix-build-coordinator-start-script.
* doc/guix.texi (Guix Build Coordinator): Document this new field.
2022-07-01 09:45:28 +01:00
Christopher Baines
e176727971
gnu: guix-build-coordinator: Update to 0-55.23504e0.
* gnu/packages/package-management.scm (guix-build-coordinator): Update to
0-55.23504e0.
2022-07-01 09:45:27 +01:00
Wiktor Żelazny
1eeecb2b5a
gnu: Add r-sungeo.
* gnu/packages/cran.scm (r-sungeo): New variable.
2022-07-01 10:33:01 +02:00
Wiktor Żelazny
5ae0d8a9d0
gnu: Add r-measurements.
* gnu/packages/cran.scm (r-measurements): New variable.
2022-07-01 10:33:01 +02:00
Wiktor Żelazny
c359153ac4
gnu: Add r-cartogram.
* gnu/packages/cran.scm (r-cartogram): New variable.
2022-07-01 10:33:01 +02:00
Wiktor Żelazny
e008aee36f
gnu: Add r-automap.
* gnu/packages/cran.scm (r-automap): New variable.
2022-07-01 10:33:01 +02:00
Wiktor Żelazny
525457cc8b
gnu: Add r-gstat.
* gnu/packages/cran.scm (r-gstat): New variable.
2022-07-01 10:33:01 +02:00
Wiktor Żelazny
3cefd8ba5f
gnu: Add r-spacetime.
* gnu/packages/cran.scm (r-spacetime): New variable.
2022-07-01 10:33:00 +02:00
Mădălin Ionel Patrașcu
ec23d7caa8
gnu: Add r-antiprofiles.
* gnu/packages/bioconductor.scm (r-antiprofiles): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 10:28:22 +02:00
Mădălin Ionel Patrașcu
3109d4a30e
gnu: Add r-annmap.
* gnu/packages/bioconductor.scm (r-annmap): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 10:28:21 +02:00
Mădălin Ionel Patrașcu
f004033b47
gnu: Add r-anf.
* gnu/packages/bioconductor.scm (r-anf): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 10:28:21 +02:00
Mădălin Ionel Patrașcu
4c294ae7fb
gnu: Add r-anaquin.
* gnu/packages/bioconductor.scm (r-anaquin): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2022-07-01 10:28:21 +02:00
Vagrant Cascadian
b7e414982d
gnu: opensbi: Update to 1.1.
* gnu/packages/firmware.scm (make-opensbi-package): Update to 1.1.
2022-06-30 15:39:29 -07:00
Marius Bakke
f9dd754fb1
gnu: itstool: Update home page.
* gnu/packages/glib.scm (itstool)[home-page]: Use HTTPS and remove defunct
subdomain.
2022-06-30 23:01:28 +02:00
Marius Bakke
3fc6709d42
gnu: cURL: Replace with 7.84.0 [security fixes].
This fixes CVE-2022-22576, CVE-2022-27774, CVE-2022-27775, CVE-2022-27776,
CVE-2022-27781, and CVE-2022-27782.

* gnu/packages/curl.scm (curl)[replacement]: New field.
(curl-7.84.0): New private variable.
2022-06-30 23:01:28 +02:00
Marius Bakke
d06de25cd2
gnu: cURL: Update source URI.
* gnu/packages/curl.scm (curl)[source](uri): Follow redirect.
2022-06-30 23:01:28 +02:00
Pierre Neidhardt
eac290933f
gnu: Add sketch.
* gnu/packages/lisp-xyz.scm (cl-sketch, ecl-sketch, sbcl-sketch): New variables.
2022-06-30 20:01:38 +02:00
Pierre Neidhardt
90300336a2
gnu: Add cl-sdl2-ttf.
* gnu/packages/lisp-xyz.scm (cl-sdl2-ttf, ecl-sdl2-ttf, sbcl-sdl2-ttf): New variables.
2022-06-30 20:01:38 +02:00
Pierre Neidhardt
4782f99fa7
gnu: Add cl-sdl2-image.
* gnu/packages/lisp-xyz.scm (cl-sdl2-image, ecl-cl-sdl2-image,
sbcl-cl-sdl2-image): New variables.
2022-06-30 20:01:38 +02:00
Pierre Neidhardt
ea917c7abd
gnu: Add cl-geometry.
* gnu/packages/lisp-xyz.scm (cl-geometry, ecl-cl-geometry, sbcl-cl-geometry):
New variables.
2022-06-30 20:01:38 +02:00
Pierre Neidhardt
1adf2d7fe3
gnu: Add cl-trees.
* gnu/packages/lisp-xyz.scm (cl-trees, ecl-cl-trees, sbcl-cl-trees): New variables.
2022-06-30 20:01:38 +02:00
Pierre Neidhardt
c5dcaa6ff2
gnu: Add glkit.
* gnu/packages/lisp-xyz.scm (cl-glkit, ecl-glkit, sbcl-glkit): New variables.
2022-06-30 20:01:37 +02:00
Pierre Neidhardt
d5170f78f5
gnu: Add sdl2kit.
* gnu/packages/lisp-xyz.scm (cl-sdl2kit, ecl-sdl2kit, sbcl-sdl2kit): New variables.
2022-06-30 20:01:37 +02:00
Pierre Neidhardt
141d01e670
gnu: Add mathkit.
* gnu/packages/lisp-xyz.scm (cl-mathkit, ecl-mathkit, sbcl-mathkit): New
variables.
2022-06-30 20:01:37 +02:00