gnu: Add font-chivo.
* gnu/packages/fonts.scm (font-chivo): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
gnu: ytfzf: Replace YOUTUBE-DL by YT-DLP.
* gnu/packages/image-viewers.scm (ytfzf)[inputs]: Replace YOUTUBE-DL with
YT-DLP.
[arguments]: Replace YOUTUBE-DL with YT-DLP in WRAP-PROGRAM phase.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
gnu: Add nntpit.
* gnu/packages/web.scm (nntpit): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
gnu: Add youplot.
* gnu/packages/plotutils.scm (youplot): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
gnu: Add ruby-unicode-plot.
* gnu/packages/plotutils.scm (ruby-unicode-plot): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
gnu: Add ruby-enumerable-statistics.
* gnu/packages/statistics.scm (ruby-enumerable-statistics): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
gnu: Add mairix.
* gnu/packages/mail.scm (mairix): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
services: mympd: Use records for user and group fields.
* gnu/services/audio.scm (%mympd-user, %mympd-group)
(mympd-user-sanitizer, mympd-group-sanitizer): New variables.
(mympd-configuration)[user]: Use user-account as value type.
Sanitize via mympd-user-sanitizer.
[group]: Use user-group as value type.
Sanitize via mympd-group-sanitizer.
(mympd-serialize-configuration): Adjust accordingly.
(mympd-accounts): Likewise.
* doc/guix.texi (Audio Services)[myMPD]: Likewise.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
services: mpd: Use proper records for user and group fields.
Deprecate using strings for these fields and prefer user-account
(resp. user-group) instead to avoid duplication within account-service-type.
Fixes #61570 <https://issues.guix.gnu.org/61570>.
* gnu/services/audio.scm (%mpd-user, %mpd-group)
(mpd-serialize-user-account, mpd-serialize-user-group)
(mpd-user-sanitizer, mpd-group-sanitizer): New variables.
(mpd-configuration)[user]: Use user-account as value type.
Sanitize via mpd-user-sanitizer.
[group]: Use user-group as value type.
Sanitize via mpd-group-sanitizer.
(mpd-shepherd-service): Adjust accordingly.
(mpd-accounts): Likewise.
* doc/guix.texi (Audio Services)[Music Player Daemon]: Likewise.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
services: mpd: Fix unintentional API breakage for mixer-type field.
* gnu/services/audio.scm (mpd-output)[mixer-type]: Use sanitizer to
accept both strings and symbols as values.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
services: replace bare serializers with (serializer ...)
* gnu/home/services/shells.scm
(home-zsh-configuration)[environment-variables]: Use (serializer ...).
(home-bash-configuration)[aliases, environment-variables]: Likewise.
(home-fish-configuration)[abbreviations, aliases]
[environment-variables]: Likewise.
* gnu/services/audio.scm (mpd-configuration)[music-dir, playlist-dir]
[endpoints, address, inputs, archive-plugins, input-cache-size]
[decoders, filters, playlist-plugins]: Likewise.
* gnu/services/linux.scm (fstrim-configuration)[extra-arguments]:
Likewise.
* gnu/services/security.scm (fail2ban-jail-configuration)[backend]
[log-encoding, extra-content]: Likewise.
* tests/services/configuration.scm: Update tests.
("serialize-configuration [deprecated]"): New test.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
services: configuration: Add user-defined sanitizer support.
This changes the 'custom-serializer' field into a generic
'extra-args' field that can be extended to support new literals.
Within extra-args, the literals 'sanitizer' and 'serializer' allow
for user-defined sanitization and serialization procedures respectively.
The 'empty-serializer' was also added as a literal to be used as before.
To prevent confusion between the new “explicit” style of specifying
a sanitizer, and the old “implicit” style, the latter has been
deprecated, and a warning is issued if it is encountered.
* gnu/services/configuration.scm (define-configuration-helper):
Rename 'custom-serializer' to 'extra-args'. Add support for literals
'sanitizer', 'serializer' and 'empty-serializer'. Rename procedure
'field-sanitizer' to 'default-field-sanitizer' to avoid syntax clash.
Only define default field sanitizers if user-defined ones are absent.
(normalize-extra-args): New variable.
(<configuration-field>)[sanitizer]: New field.
* doc/guix.texi (Complex Configurations): Document the newly added
literals.
* tests/services/configuration.scm: Add tests for the new literals.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
gnu: Add python-clingraph.
* gnu/packages/potassco.scm (python-clingraph): New variable.
gnu: Separate potassco packages into their own module.
* gnu/packages/potassco.scm: New file.
* gnu/packages/maths.scm (libpotassco, clasp, clingo, python-clingo)
(python-telingo): Move to potassco module. Adjust imports accordingly.
* gnu/packages/emacs-xyz.scm (emacs-pasp-mode): Move to potassco module.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add %D%/packages/potassco.scm.
gnu: python-imageio: Update to 2.26.0.
* gnu/packages/python-xyz.scm (python-imageio): Update to 2.26.0.
[build-system]: Use pyproject-build-system.
[arguments]: Use G-Expressions.
<#:tests?>: Drop argument.
<#:test-flags>: New argument.
<#:phases>: Drop replacement for ‘check’.
Add ‘fix-source’ and ‘fix-failing-tests’.
[inputs]: Add freeimage.
[propagated-inputs]: Add python-imageio-ffmpeg.
gnu: Add python-imageio-ffmpeg.
* gnu/packages/python-xyz.scm (python-imageio-ffmpeg): New variable.
gnu: emacs-slime: Add missing propagated input.
Fixes error "Cannot open load file: No such file or directory,
../lib/macrostep" when trying to run slime.
* gnu/packages/emacs-xyz.scm (emacs-slime)[propagated-inputs]: Add
emacs-macrostep.
gnu: Add mecab-unidic.
* gnu/packages/language.scm (mecab-unidic): New variable.
gnu: Add mecab-ipadic.
* gnu/packages/language.scm (mecab-ipadic): New variable.
gnu: Add mecab.
* gnu/packages/language.scm (mecab): New variable.
* gnu/packages/patches/mecab-variable-param.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.