Syntax-highlighted monospace is overrated. Nothing like glancing at
Webmail to spot obvious bugs.
* gnu/packages/file-systems.scm (xfstests)[arguments]: Omit /usr from /bin/time.
* gnu/packages/compression.scm (snappy): Update to 1.1.9.
[source]: Add another patch.
[arguments]: Add new #:configure-flags and an
'unpack-third_party-subprojects phase.
[native-inputs]: Add the sources for benchmark and googletests.
* gnu/packages/patches/snappy-add-inline-for-GCC.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/syndication.scm (giara): New variable.
* gnu/packages/patches/giara-fix-login.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/emacs-xyz.scm (emacs-rime):[arguments]: Use #:include rather
than #:phases to add librime-emacs.so.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
* gnu/system.scm (operating-system-directory-base-entries): Remove code
to handle generation of "kernel" for linux-libre kernels.
(operating-system-default-essential-services): Instantiate
linux-builder-service-type.
(package-for-kernel): Move ...
* gnu/services.scm: ... to here.
(linux-builder-service-type): New variable.
(linux-builder-configuration): New type.
(linux-loadable-module-service-type): New variable.
* gnu/tests/linux-modules.scm (run-loadable-kernel-modules-test): Move
code to ...
(run-loadable-kernel-modules-test-base): ... new procedure here.
(run-loadable-kernel-modules-service-test): New procedure.
(%test-loadable-kernel-modules-service-0): New variable.
(%test-loadable-kernel-modules-service-1): New variable.
(%test-loadable-kernel-modules-service-2): New variable.
* doc/guix.texi: Document linux-loadable-module-service-type.
Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
Inspired by
1270b2e209.
The price to pay is about 5% of a CPU core usage in the guest in the worst
scenario.
* gnu/system/examples/vm-image.tmpl
(auto-update-resolution-crutch): New mcron job.
[services]: Extend the mcron-service with it.
* gnu/packages/patches/perl-image-exiftool-CVE-2021-22204.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/photo.scm (perl-image-exiftool)[source]: Use it.
and arm64.
This has been the recommended default for arm and arm64 since v5.9
(upstream commit f259eab3ea0e7ed73db91f6358274dd3a9a27d79).
* gnu/packages/aux-files/linux-libre/5.12-arm.conf,
gnu/packages/aux-files/linux-libre/5.12-arm64.conf: Enable
CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL, disable
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE.
* gnu/packages/xfce.scm (xfce4-session):
[inputs]: Add xset.
[arguments]: Add 'patch-xflock' phase to use exact store path to 'xset'
in 'xflock4'.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Currently gcc:lib does not include libiberty so this change restores the
initial intent.
* gnu/packages/ocaml.scm (ocaml-4.11)[inputs]: Replace "gcc:lib" by
"libiberty".
The non-hygienic binding of the source location accessor was set to
'-location'; in modules where multiple configurations were defined, it would
cause compilation warnings such as:
gnu/services/mail.scm:175:0: warning: shadows previous definition of
`%-location-procedure' at gnu/services/mail.scm:165:0
* gnu/services/configuration.scm (define-configuration-helper) <id>: Add a
missing #'stem argument to use the configuration name as a prefix to the
location accessor identifier.
In some cases, rather than globally disabling serialization, it may be more
appropriate to disable or otherwise alter the serialization procedure of a
specific field. In large module, multiple configurations may also exist that
would need to alter the default serialization procedure, which is named after
the field type. Being able to specify a per-field serialization procedure
provides more flexibility.
* gnu/services/configuration.scm (define-configuration): Add an optional
pattern variable to allow specifying a custom serialization procedure.
(define-configuration-helper) <field-serializer>: Use it to transform the
syntax.
(empty-serializer): New procedure.
(serialize-package): Alias to ‘empty-serializer’.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Serialization is not always useful, for example when deriving command line
arguments from a configuration. This change provides a way to turn it off,
which removes the need to define a bunch of dummy serialization procedures.
Credit goes to Andrew Gierth (RhodiumToad) from #guile for providing the
solution. Thank you!
* gnu/services/configuration.scm (define-configuration-helper): New procedure.
(define-configuration) <no-serialization>: New syntactic keyword. Use it in a
new pattern. Refactor the macro so that it makes use of the above helper
procedure.
This resolves a compilation warning introduced with commit bb716e8d9d.
* gnu/services/configuration.scm (configuration->documentation): Use display
to print the string instead of format.
This has been the recommended default for arm and arm64 since since
v5.9 (upstream commit f259eab3ea0e7ed73db91f6358274dd3a9a27d79).
* gnu/packages/aux-files/linux-libre/5.10-arm.conf,
gnu/packages/aux-files/linux-libre/5.10-arm.conf,
gnu/packages/aux-files/linux-libre/5.11-arm.conf,
gnu/packages/aux-files/linux-libre/5.11-arm.conf: Enable
CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL, disable
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE.
Fixes <https://issues.guix.gnu.org/43530>.
Wget is typically included with most GNU/Linux distributions. It adds about
~3 MiB to the system size.
* gnu/system.scm (%base-packages-networking): Add the wget package.
This package is part of the Python standard library since CPython 3.3.
* gnu/packages/python-xyz.scm (python-ipaddress): Merge with ...
(python2-ipaddress): ... this.
[name, arguments]: Adjust accordingly.
The original (undocumented) procedure to generate the doc has a difficult to
grasp interface; add a simpler one on top of it.
* gnu/services/configuration.scm (configuration->documentation): New procedure.
Not all fields in a configuration have a sensible default value. This changes
makes it possible to omit a default value for a configuration field, requiring
the user to provide a value.
* gnu/services/configuration.scm (configuration-missing-field): New procedure.
(define-configuration): Make default value optional.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
This fixes the following issue where spice-vdagent would fail to start if the
spice-vdagent-sock socket file already existed:
spice-vdagentd: Fatal could not create the server socket
/run/spice-vdagentd/spice-vdagent-sock: Error binding to address: Address
already in use
The requirement is also modified to depend on dbus-system, a cue taken from
upstream's own systemd service file (see 'data/spice-vdagentd.service' in the
sources).
* gnu/services/spice.scm (spice-vdagent-activation): Delete procedure.
(spice-vdagent-shepherd-service): Fix indentation.
[requirement]: Replace udev by dbus-system.
[start]: Ensure the spice-vdagentd run-time directory exists and that the
spice-vdagent-sock socket file does *not* exist before forking the daemon.
This follows up on 9095fccd0e, et.al.
* gnu/packages/python-xyz.scm (python-pycodestyle-2.6, python-pyflakes-2.2,
python-flake8-3.8): New variables.
* gnu/packages/openstack.scm (python-hacking)[propagated-inputs]: Change from
PYTHON-FLAKE8 to PYTHON-FLAKE8-3.8.
* gnu/packages/python-web.scm (gunicorn): Update to 2.1.0.
[arguments]: Ignore one test that cannot run in the build container.
[native-inputs]: Add PYTHON-GEVENT.
* gnu/packages/web.scm (nginx)[inputs]: Add libxml2 and libxslt.
[arguments]: Add "--with-http_xslt_module" to the configure flags.
Set up CFLAGS to find libxml2 headers.
* gnu/packages/web-browsers.scm (nyxt): Update to 2-pre-release-7.
[arguments]: Set GI_TYPELIB_PATH to the value in the build environment, not
just gsettings-desktop-schemas since we also need the typelibs of GTK, Pango,
etc.
[inputs]: Add sbcl-cl-gobject-introspection, gtk+, webkitgtk,
gobjectintrospection. There are all needed for the new GI-based renderer.
* gnu/packages/dictionaries.scm (translate-shell)[arguments]: Replace
custom 'emacs-install phase with the 'install phase from the
emacs-build-system. Also add 'emacs-make-autoload and
'emacs-autoloads-completion phases from the emacs-build-system. Adjust
modules and imported modules accordingly.
* gnu/services/mail.scm (protocol-configuration): Add an ‘imap-metadata?’
setting to enable IMAP METADATA support in the ‘imap’ protocol.
* doc/guix.texi (Mail Services): Document it.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* gnu/packages/authentication.scm (oath-toolkit)[arguments]:
Add "--enable-pskc" and "--with-xmlsec-crypto-engine=openssl"
to #:configure-flags.
[native-inputs]: Add libltdl.
[inputs]: Add openssl and xmlsec-openssl.
[description]: Document the two new features.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* gnu/packages/linux.scm (rasdaemon)[description]: Use @acronym with
1 comma only (@comma is not yet supported).
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* gnu/packages/shells.scm (loksh): Update to 6.9.
[source]: Check out recursively.
[build-systems]: Switch to Meson.
[inputs]: Remove libbsd.
[arguments]: Remove the old build system's #:make-flags and #:phases
customisation.
* gnu/packages/django.scm (python-django)[arguments]: Delete 'wrap' phase.
[native-inputs]: Move PYTHON-JINJA2 ...
[propagated-inputs]: ... here. While at it, add a comment about which inputs
are optional and adjust order accordingly.
Reported by Maxime Devos <maximedevos@telenet.be>.
* gnu/packages/package-management.scm (guile2.2-guix)[inputs]
[propagated-inputs]: Add GUILE2.2-LIB, GUILE2.2-ZLIB, and
GUILE2.2-LZLIB.
Regression introduced in 58805da44d.
* gnu/packages/linux.scm (rasdaemon)[description]: Avoid @acronym since
Guile's Texinfo module doesn't currently support @comma{}.
* doc/guix.texi (Linux Services): Use @comma{} within @acronym.
* gnu/services/spice.scm (spice-vdagent-activation): Update runtime directory
from /var/run/spice-vdagentd to /run/spice-vdagentd.
(spice-vdagent-service-type): Specify a default value and fix indentation.
This introduces tla2tools.jar, which contains the TLA+ model checker
and simulator (TLC); a TLA+ REPL; a semantic analyzer (SANY); the TLATeX
typesetting system; PlusCal translator; and more. I have added five
wrapper scripts for convenience, rather than invoking `java' manually.
The wrapper scripts are not comprehensive; users who are familiar with
tla2tools.jar, or have read the book Specifying Systems, may still
invoke the commands in the traditional way.
The minimum JDK version is 11. I chose to stick with that rather than
bumping it to 14 (which is the largest version currently in Guix)
because each OpenJDK version in Guix depends on the version before it,
and so it needlessly results in many 100s of MiB of unnecessary
dependencies.
Note that this is _not_ the TLA+ Toolbox, which is the GUI commonly used
with TLA+.
* gnu/packages/java.scm (tla2tools): New variable.
* gnu/packages/patches/tla2tools-build-xml.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This is part of JLine 3.
I was able to get this working properly under Guix by providing ncurses'
infocmp, as well as ensuring the *.caps files were present in the JAR,
but similar methods didn't work for the tests; if you have Java
knowledge, I'd appreciate the help getting those tests enabled.
* gnu/packages/java.scm (java-jline-terminal): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
All of these packages are components of java-eclipse-lsp4j, packaged
independently. This contains only what was needed for tla2tools, and so
there are parts of java-eclipse-lsp4j that are not packaged.
Note that this does not package the latest version (0.12.0 at the time
of writing)---it depends on the Xtend language, which is a huge
packaging effort. 0.10.0 is the version expected by tla2tools, for
which this dependency was introduced.
* gnu/packages/java.scm (java-eclipse-lsp4j-common): New variable.
(java-eclipse-lsp4j-jsonrpc): New variable.
(java-eclipse-lsp4j-jsonrpc-debug): New variable.
(java-eclipse-lsp4j-generator): New variable.
(java-eclipse-lsp4j-debug): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This package is a component of xtext-lib. The rest of xtext-lib was not
added.
* gnu/packages/java.scm (java-eclipse-xtext-xbase-lib): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This introduces a new package rather than upgrading the exist java-gson
package because it is built using OpenJDK11; I didn't want to have to
propagate that JDK dependency to the other packages that use it.
OpenJDK 11 was chosen becuase this dependency was introduced for
tla2tools.
* gnu/packages/java.scm (java-gson-2.8.6): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/racket.scm (racket-minimal, racket)[source](uri): Lift
base urls into a new internal variable, '%installer-mirrors'.
Add mirrors at the University of Utah, Northwestern University,
the University of Waterloo, and Vrije Universiteit Brussel (Infogroep).
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
By design, the `racket` package is equivalent to 'racket-minimal'
plus 'raco pkg install -i main-distribution'.
This switch brings the Guix packages a small step closer to that goal.
* gnu/packages/racket.scm (racket-minimal, racket): Change
'racket-minimal' to be the base package and 'racket' to inherit
from it. Move 'version', 'patches', 'home-page', 'build-system',
'arguments', and 'license' to 'racket-minimal'.
* gnu/packages/racket.scm (racket)[inputs]: Rather than copy and
pasting, use '(package-inputs racket-minimal)'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/racket.scm (racket)[source](patches): Remove
"racket-store-checksum-override.patch", which is no longer needed since
we stopped injecting store paths into Racket files in commit 834aa48:
see <https://issues.guix.gnu.org/47180>.
* gnu/packages/patches/racket-store-checksum-override.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This is intended to fix a non-deterministic build error when xelatex inspects
the fonts directory and finds a broken font from texlive-amsfonts before the
correct font in texlive-cm.
* gnu/packages/python-xyz.scm (python-nbconvert)[native-inputs]: Replace
texlive-amsfonts with texlive-amsfonts/patched.
* gnu/packages/package-management.scm (guix)[arguments]: In
'copy-bootstrap-guile' and 'wrap-program' phases, refer to #:system,
#:native-inputs, and #:target instead of unquoting (%current-system)
and (%current-target-system).
The Bash wrapper created by 'wrap-program' creates an extra
indirection and may annoyingly emit locale warnings:
/gnu/store/…-bash-minimal-5.0.16/bin/bash: warning: setlocale: LC_ALL: cannot change locale (wtf)
This warning would typically show up when running Guix, as produced by
'guix pack guix', on a foreign distro, annihilating efforts made in
1d4ab335b2 and
8a973abc6f.
* gnu/packages/package-management.scm (guix)[arguments]: In
'wrap-program' phase, remove 'string-join' call for PATH and GOPATH.
Replace 'wrap-program' call with a 'substitute*' form. Remove (when
target ...) form.
[inputs]: Remove "bash-minimal" added in commit
38b9af7c92 and no longer needed.
This is a followup to 02e2e093e8, which
added Guile-Lib as an input but did not add it to the wrapper's search
path.
* gnu/packages/package-management.scm (guix)[arguments]: In
'wrap-program' phase, add GUILE-LIB to DEPS.
* gnu/packages/mail.scm (crm114)[arguments]: Install the crm114 emacs mode
using the install phase from emacs-build-system, instead of in the custom
pre-install phase. Run the make-autoloads phase after this new
install-emacs-mode phase.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
Reported by Maxime Devos <maximedevos@telenet.be>.
* gnu/packages/package-management.scm (guile2.2-guix)[inputs]
[propagated-inputs]: Add GUILE2.2-LIB, GUILE2.2-ZLIB, and
GUILE2.2-LZLIB.
* gnu/packages/package-management.scm (guix)[arguments]: In
'copy-bootstrap-guile' and 'wrap-program' phases, refer to #:system,
#:native-inputs, and #:target instead of unquoting (%current-system)
and (%current-target-system).
The Bash wrapper created by 'wrap-program' creates an extra
indirection and may annoyingly emit locale warnings:
/gnu/store/…-bash-minimal-5.0.16/bin/bash: warning: setlocale: LC_ALL: cannot change locale (wtf)
This warning would typically show up when running Guix, as produced by
'guix pack guix', on a foreign distro, annihilating efforts made in
1d4ab335b2 and
8a973abc6f.
* gnu/packages/package-management.scm (guix)[arguments]: In
'wrap-program' phase, remove 'string-join' call for PATH and GOPATH.
Replace 'wrap-program' call with a 'substitute*' form. Remove (when
target ...) form.
[inputs]: Remove "bash-minimal" added in commit
38b9af7c92 and no longer needed.