* gnu/services/networking.scm (maybe-number?, maybe-string?): New procedures.
(<opendht-configuration>): New configuration record.
(%opendht-accounts): New variable.
(opendht-configuration->command-line-arguments): New procedure.
(opendht-shepherd-service, opendht-service-type): New variables.
* doc/guix.texi (Networking Services): Document the new service.
This is added for convenience and for uniformity with the
define-maybe/no-serialization syntax introduced in the previous commit.
* gnu/services/configuration.scm
(define-configuration/no-serialization): New syntax.
Before this change, using define-maybe along define-configuration with the
no-serialization syntactic keyword would result in the following warning:
warning: possibly unbound variable `VARIABLE-NAME'
This change introduces the define-maybe/no-serialization variant that does
away with defining a serialization helper procedure, which makes it possible
to avoid the above warning.
* gnu/services/configuration.scm (define-maybe/no-serialization): New syntax.
(define-maybe-helper): New procedure.
(define-maybe): Define syntax using the above procedure.
* tests/services/configuration.scm (tests): Fix module name.
(custom-number-serializer): Do not print to standard output.
(maybe-number?, serialize-maybe-number): New procedures defined via the
define-maybe macro.
(config-with-maybe-number): New configuration.
(serialize-number): New procedure.
("maybe value serialization"): New test.
(maybe-string?): New procedure defined via the define-maybe/no-serialization
macro.
(config-with-maybe-string/no-serialization): New configuration.
("maybe value without serialization no procedure bound"): New test.
With this change, the wall-clock time of:
guix system build --no-grafts -d gnu/system/install.scm
goes from 5.0s to 2.3s on Guile 3.0.5.
* guix/ui.scm (without-compiler-optimizations): New macro.
(load*): Use it.
* gnu/packages/databases.scm (postgresql-13)[replacement]: Use postgresql-13.3.
(postgresql-13.2): Replace with ...
(postgresql-13.3): ... new variable.
This will make Mercurial be able to find third-party extensions installed with
Guix, without having to set PYTHONPATH.
* gnu/packages/patches/mercurial-hg-extension-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register the patch.
* gnu/packages/version-control.scm (mercurial)[origin](patches): Apply the
patch.
[native-search-paths]: Add HGEXTENSIONPATH.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/graphviz-CVE-2020-18032.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/graphviz.scm (graphviz)[replacement]: New field.
(graphviz/fixed): New variable.
I'm looking at this because the profile-collisions linter crashes for this
package, and that currently breaks processing revisions in the Guix Data
Service.
* gnu/packages/emacs-xyz.scm (emacs-wucuo)[arguments]: Change #tn to #t.
* gnu/packages/xdisorg.scm (wl-clipboard)[arguments]: Add a new
'patch-file-names phase.
[inputs]: Add coreutils and xdg-utils.
Reported by pineapples in #guix.
The Go importer module requires a recent guile-glib; the test should only be
run when such requirement is met.
* Makefile.am (SCM_TESTS)[HAVE_GUILE_LIB]: Add tests/go.scm only if this
condition is met.
Reported-by: Chris Marusich <cmmarusich@gmail.com>